Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > The real world > Idle chatter

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Old January 25, 2009, 15:24   #1
pndrev
Scout
 
Join Date: Sep 2008
Location: Fürth, Germany
Age: 40
Posts: 38
pndrev is on a distinguished road
Lightbulb Developing a RL

Ok, I suppose technically it would fit better on r.g.a.*, but I don't feel comfortable with such a large audience yet.

All the threads here about variant development have me inspired to start work on my own roguelike!
Nothing too detailed is fixed yet, as I want the basic engine up and running before really presenting anything.


I'm roughly following the 15 steps from the roguebasin wiki, as a guide for milestones. So far I got a scrolling map, the base classes for actors, items, terrain and effects (already used for testing purposes).

Time is implemented through firing heartbeat events in the main loop, received by all objects on the map. Actions cost energy and receiving a heartbeat restores energy or calls the action routines. The only difference so far between PC and NPCs is that if a PC has its 'currently active' flag set, the heartbeat stops until the PC is no longer active (energy below the action threshold) - effectively waiting for keyboard input.

The message system is event-driven as well, which is especially nice for debugging, as I can just listen to all messages directly in the game window.

Display is traditional ASCII (tiles shouldn't be a problem, as the representation is the responsibility of the object, the display class just draws what it is told), although I had to implement my own double-buffering to avoid flicker.

Not too bad for a couple of evenings, although I expect that progress will get slower once I get to data files, inventory management and effects. Not to mention map generation beyond the current completely random fill. Truth be told, I dread map generation. I'm tending towards a tree based approach - dividing the map into parts, dividing the parts again... then placing a room in each part and traversing the tree, connecting the parts. So far, that is the only approach that I could wrap my head around when it comes to thinking about the actual implementation.


But next up is the menu system - I'm still not decided if I should display it in a separate area or in the message panel. Right now, I just want the basic 'Really quit? y/n' message to work. Any further menus should then be a matter of inheritance and responding to inputs.

Wish me luck.
pndrev is offline   Reply With Quote
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 08:42.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.