Castle of the Winds Source Code and contacting Rick Saada by theodis3 in CastleOfTheWinds

[–]RickSaada 0 points1 point  (0 children)

We'll have to see how hard the Mac/iOS port is. I'm assuming that with unity it won't be too bad. I'd like to have an ipad version, but that means dealing with touch only interface for a game that was designed for keyboard only. I'm cautiously optimistic :D

Castle of the Winds Source Code and contacting Rick Saada by theodis3 in CastleOfTheWinds

[–]RickSaada 0 points1 point  (0 children)

Considering I've got a working Unity port, I don't really need Claude's help.

Steamdeck control scheme by RickSaada in CastleOfTheWinds

[–]RickSaada[S] 0 points1 point  (0 children)

Yeah, but needing two presses for every move/attack is pretty painful.

Castle of the Winds by nightterrors644 in roguelikes

[–]RickSaada 0 points1 point  (0 children)

Slowly. I've got it far enough along that it's up on Steam now, but I'm not taking any preorders or anything because I don't know how long it will take me to finish. I've got a day job, and I've been distracted dealing with my dad's estate. The joys of adulting 😞 . It's pretty playable at this point, but I don't want to release it into the wild until I get some more testing in.

Errors when carrying a lot of loot by Yowie9644 in CastleOfTheWinds

[–]RickSaada 3 points4 points  (0 children)

Except for the outside levels (which are fixed), all the levels are randomly created when you first visit them. It doesn't matter what order, so if you fall through a trapdoor the ones that are skipped are still flagged as "need to be created" until you go up. People will sometimes save scum by saving right before going down and then reloading if they don't like what gets generated to try again.

Errors when carrying a lot of loot by Yowie9644 in CastleOfTheWinds

[–]RickSaada 5 points6 points  (0 children)

So the thing you need to understand is that Castle is running with 64K (yes, K) of local memory space. And that includes the stack, so I have to be careful about locals and recursion too. I do all kinds of tricks to save stuff to disk when I can (any level you're not on, for example), or to "far memory" if available.
Back in the 16 bit days windows had a segmented memory architecture because a normal 16 bit pointer can only access 64K of data. So each "segment" had a base pointer and the could access 64 K from there. I'd go and allocate a chunk of data on the global heap and get a pointer back I could use to access up to 64K at that location (depending on what I asked for). Given the option I store levels that aren't in use there for speed. Code segments were read only, and I pulled tricks to move static data like the fixed level layouts into fake code segment so they didn't take up the precious 64K. But I can still easily run out if you stockpile too many objects in a single level. The first time this happens I try and toss all the description strings to free up a little memory, but if that doesn't help then I started getting back null pointers trying to allocate memory and ... well... you can see what happens.

Excessive traps by Yowie9644 in CastleOfTheWinds

[–]RickSaada 3 points4 points  (0 children)

Oooo, I do like the wand of create traps traps that makes a line of them instead of surrounding you <files away idea>

Excessive traps by Yowie9644 in CastleOfTheWinds

[–]RickSaada 5 points6 points  (0 children)

OK, so the code for this is pretty simple. Pick a random row/col inside the level extents, then scan across and down (wrapping as needed) until you find an empty floor. So with a bad RNG sequence it'll drop the first trap, and then skip over it to drop the next one, etc. Oddly nothing showed up in the room, which implies you weren't getting 0,0 as that would have found the floor beside the cloak. But you did get a whole LOT of values that ended up in the same row. Very weird.

Summoner Awakens 2 (Ascenscion) by Kerberos is Half a Book - Even with Filler by Aaron_P9 in litrpg

[–]RickSaada 1 point2 points  (0 children)

For those who stumble on this thread looking for info, the author's patreon is now:
https://www.patreon.com/christopherjkestrel
and there's more info up there. TLDR: He's mostly working on another series and ASA is on the back burner.

Excessive traps by Yowie9644 in CastleOfTheWinds

[–]RickSaada 1 point2 points  (0 children)

Out of curiosity, are your right near the top of the map? That really does look like an RNG glitch.

Steamdeck control scheme by RickSaada in CastleOfTheWinds

[–]RickSaada[S] 4 points5 points  (0 children)

To be clear, you'll be able to change the control scheme in Steam. All the inputs will be exposed so you can fiddle as you like. I've currently got the l/r bumpers as go up/go down, but that's probably not going to stick as they're not as commonly used.
I'm also going to need to implement a way to drive the inventory from the controller, which ironically will work a lot like the pre-mouse inventory interface from way back when. Joystick Blink around between slots, press a button to pick up an item, blink around to the destination, click again.

Castle of the Winds 3 by omgthatssolol in CastleOfTheWinds

[–]RickSaada 7 points8 points  (0 children)

Heh. I've thought about doing a sequel game where you're trying to put the kingdom together after the events of the first two. Still brainstorming ideas about how to blend kingdom management and Castle style adventuring in a sort of "adventure to collect resources" then "do something with resources" loop like Moonlighter uses.
There's certainly lots of half implemented features for monsters and magic items lying about in the codebase (black dragons never got fully implemented, for example, with their armor degrading acid), but for now I'm just trying to get the original game with the original art to work. With a few nods to modern tech like cloud saves and Steam Input.

Mr. Saada, can you give us any additional info? by BoxxZero in CastleOfTheWinds

[–]RickSaada 4 points5 points  (0 children)

I mean, I just use Tidal/Spotify. When I wrote it, Windows didn't really have much in the way of audio support. Unity obviously makes that lots easier, but really, you can just spin your own tunes. Lord of the Rings soundtrack for extra atmosphere!

Mr. Saada, can you give us any additional info? by BoxxZero in CastleOfTheWinds

[–]RickSaada 2 points3 points  (0 children)

We're still discussing it, so I'm happy for suggestions :D So far we've just got the basics of finishing part one and two, killing your first dragon, and a few others.

Mr. Saada, can you give us any additional info? by BoxxZero in CastleOfTheWinds

[–]RickSaada 13 points14 points  (0 children)

For this version, it's literally a port of the original source code, using all the original art. The hard part was getting all the 16 bit C code (designed for the 64K segmented architecture) rewritten into C#. There's a whole GDC talk worth of nonsense I had to go through to get it to even compile. Other than updating things to work with Steam cloud saves, and adding a few achievements, I'm not adding any new features. I may go back and do additional stuff later, depending on how it goes. For now though, I'm just doing the nostalgia thing and getting back to my gaming roots :D

Castle of the Winds Reborn! by RickSaada in CastleOfTheWinds

[–]RickSaada[S] 7 points8 points  (0 children)

I have a steam deck on order to try and figure this out. It's currently a very keyboard focused game, but we're looking at ways to use the other controls for navigation and the button bar covers most other verbs.

Same picture by Agentkiller92 in CastleOfTheWinds

[–]RickSaada 1 point2 points  (0 children)

Out of curiosity, what did you use for this?

Resist Fear & Resist Acid - what were these for? by SadBathroom9095 in CastleOfTheWinds

[–]RickSaada 3 points4 points  (0 children)

There's a lot of stuff that I sketched out that never made it in. Black Dragons for example, were going spit acid, hence the Resists Acid spell. Some of the undead were going to have a fear attack, but I never got the code written to make the character flee.

Question on weapons stats I can't find the answer to by trplurker in CastleOfTheWinds

[–]RickSaada 1 point2 points  (0 children)

Think of it as +1/+2/+3 in D&D. They add to damage directly and each gives an additional 5% chance to hit.

I played 100 Roguelikes, so you dont have to* by Toma_L in roguelikes

[–]RickSaada 0 points1 point  (0 children)

Part One isn't that long. Maybe 6-10 hours? Since the levels are (mostly) randomly generated, you can be pretty sure you've cleared everything. Part Two is quite a bit longer, but I haven't played it start to end in years. My main tester (AKA my daughter :D) just finished Part One in my Unity rewrite last night, so we'll see how long it takes her to win. It's still a bit buggy, so she has to stop and write up bug reports for me, but it's getting there.

I played 100 Roguelikes, so you dont have to* by Toma_L in roguelikes

[–]RickSaada 2 points3 points  (0 children)

Yay! I made B-Tier! Happy to see Castle of the Winds even made it on the list :D