Subscribe via RSS Become a friend on Facebook Follow me on Twitter

Cymons Games

I’m going to call this a Cymon’s Games success story in progress.

…there was a game called Wizard’s Lair that used the vanilla curses library for both UNIX and DOS ports. It was a fairly involved but fun RPG with basic ASCII graphics, but also had a party system with combat and your elementary D&D stats….

It was a lot of fun to play, especially since you could speed up the battles to be almost automated and run super fast.

Just a suggestion, don’t have to do anything with it. Might be fun to try and do a whole series on something with a little more meat to it than a 4-pager in code.

On Sunday August 3rd Devin Watson PMed me on the RR forums with the above. I responded that I was definitely interested in beefier programs in Cymon’s Games. I thought he was suggesting I convert the program, for which I was gearing up to warn him that it may be a long while before I do and I was going to suggest he try his hand at it. Before I could butter him enough for that he wrote me:

I do code, but it’s been awhile since I did some C. Last thing I wrote in C was a tutorial on how to write daemons for Linux.

I’ve downloaded Code::Blocks and followed your instructions for setting up pdcurses. I might take a swing at some of the smaller parts of a game like this and see if it would be more worthwhile to tackle each specific subsection of it as a mini-game. Then each of those parts then becomes the bigger game. Something like working on random dungeon creation, party/maps, etc.

If you don’t mind that each part comes at a somewhat slower pace due to my own daily responsibilities, then we can form up an attack plan on it.

Well now this is shows promise. Next thing I know he’s loaded up the old game and started trying to reproduce it himself. Code snippets were followed by screen shots and then main.c files started showing up in my inbox. All the while I’m providing code snippets, examples from programs on Cymon’s Games, and a lot of cheering on.

Yesterday, what amounts do Day 3 of coding, Devin made the following statement:

I’ve decided to streamline this “First Edition” so to speak by taking out load/saves and just concentrate on the gameplay itself.? There’s more than enough different topics covered by that for a beginner.

As a roadmap, could do it like this:

1.0 – Basic gameplay, nothing fancy
1.5 – Load/save, magic
2.0 – Items, inventory, more weapons, more goals
2.5 – Larger maps, loadable from disk (?)

Moving into more advanced features like loadable maps would of course require a separate data file.? But I hope by that point you’d be willing to go with it.? This is of course assuming some positive feedback from your readership.

Positive feedback indeed. This is not the first of Cymon’s Games success stories, and certianly will not be the last, but this is a story in progress that I wanted to share. Watch the comments on the side bar as I will be updating this thread with news as it develops.

For your enjoyment:

Menu Screen

ENCOUNTER!

Victory!

Dead.

First main.c

Second main.c – Now with added user-selectable stat rolls for character creation.

8 Responses to “Devin Watson and the Wizards Lair”

  1. Joe

    Day 4 update:

    Dungeon maps and movement are done now. Attached is the source. Enjoy. I’ll be tweaking what’s there tonight into tomorrow. This first iteration I am consciously trying to keep it all within 1 source file. Next iterations I’ll break out into some header files to make it better organized.

    Keep the ideas coming. It’s great to hear some feedback on this and see where it could go.

    Feel free to fiddle around with the cellular automata parameters to see what kind of dungeons/caves that can be made. Takes about 1 second to generate an 800×600 map with the current settings.

    The incompleteness of the project so far inspired me to a write up a design for an entirely different game that would rival Dwarf Fortress for it’s scope. We’ve spoke about this but there are no plans to implement my grandiose plans into this project. But it speaks to the affect of an open palate.

    New source code compiled for your pleasure


  2. Joe

    Day 6

    Here’s mine with the N-E-S-W boundary fix. IIRC, just about every struct had at least 3 members to it, but the player struct was also going to come in handy later when I introduced loading and saving files. It’s infinitely easier to read/write and keep all of that data together as a struct from a functional standpoint. It’s a futureproofing thing. :)

    A note on dungeon creation: the reason the player was initialized to be in the top corner was because of the algorithm. The likelihood of any point along the outer edges having a wall rendered on the player’s position is around 10%, as opposed to the center where it can be upwards of 45% at any given point.

    I had considered sticking him in the center, but then I thought about doing sector culling to prepare for putting the end-game goal in place. The rule I came up with was that the end goal must be as far away as possible from the player at the start of the game and must be accessible by at least 1 immediate route.

    Can’t believe this is 22 pages as is right now. Whew.

    New code, once again compiled for your pleasure.


  3. Angbandit

    I can almost feel the enjoyment you get coding it as I play it. Keep building!!!


  4. Joe

    After the last update I went on vacation. I’m back now.

    Devin has been taking some time out to work on another program, a conversion of a BASIC Space Trader game. He finished it two days ago, finished it again yesterday, and I expect will be finished again with it today. But when he’s finished for good he’ll be back to finish this game.

    I’ve suggested some ideas for the game, but don’t know if he’s planning on implementing them. Darn myself, tho, they’re so cool I feel like they have to be implemented. So if he doesn’t I will, tho I make no promises as to when.


  5. Devin Watson

    Finally settled on a name for the RPG – “Perils of Pothril”. What do you think?

    Also have added in items and an inventory system, still working out some of the function bindings for them, but the core of it is all there. It’s generic enough that it can encompass rings, potions, scrolls and the like. Digging holes is in as a feature right now, but I’m going to tie it to having a shovel, so then players can dig up the whole level if they so choose.

    Forgot to mention that the last batch of code for the RPG that I sent also includes all movement in the 8 cardinal directions. So now you can go diagonally if you want. :)


  6. Joe

    Wow, sounds like it’s getting huge!

    Before this I never had to think about what “too big” would be for the site, because I just wanted submissions. But I’ve comitted and by hook or by crook this game will be up on the site whenever it’s finished.

    Either way you’re going to get a great game out of it.


  7. Buzz

    any chance the files still exist? none of the links work anymore :(


  8. Joe

    They do now. It always surprises me what I forget to upload when servers change. Thanks for the heads up. Sorry for the delay.


Leave a Reply

Cymons Games. All programs provided without guarantee or warranty. Maintained by Joseph Larson.
If you have any questions or notice something is wrong please contact me. Powered by WordPress.