June 1999
- Languages (slightly offtopic, was Text Parsing) Mark Gritter
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Travis S. Casey
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Travis Casey
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Travis S. Casey
- Languages (slightly offtopic, was Text Parsing) Jp Calderone
- Languages (slightly offtopic, was Text Parsing) Travis Casey
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Cynbe ru Taren
- Languages (slightly offtopic, was Text Parsing) Koster, Raph
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Koster, Raph
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Ben Greear
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Jon A. Lambert
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Greg Munt
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Darren Henderson
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Greg Munt
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Ola Fosheim Grøstad
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Miroslav Silovic
- Languages (slightly offtopic, was Text Parsing) Alex Oren
- Languages (slightly offtopic, was Text Parsing) Darren Henderson
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) David Bennett
- Languages (slightly offtopic, was Text Parsing) Darren Henderson
- Languages (slightly offtopic, was Text Parsing) Ross Nicoll
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Matthew Mihaly
- Languages (slightly offtopic, was Text Parsing) Koster, Raph
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Ross Nicoll
- Languages (slightly offtopic, was Text Parsing) Jon A. Lambert
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Jon A. Lambert
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Jon A. Lambert
- Languages (slightly offtopic, was Text Parsing) Greg Miller
- Languages (slightly offtopic, was Text Parsing) Koster, Raph
- Languages (slightly offtopic, was Text Parsing) Ola Fosheim Grøstad
- Languages (slightly offtopic, was Text Parsing) Ben Greear
- Languages (slightly offtopic, was Text Parsing) Chris Gray
- Languages (slightly offtopic, was Text Parsing) Caliban Tiresias Darklock
- IndustrialMUD J C Lawrence
- IndustrialMUD Greg Miller
- Combat (very long) Matthew Mihaly
- Combat (very long) Caliban Tiresias Darklock
- Combat (very long) Matthew Mihaly
- Combat (very long) Marian Griffith
- What about goal oriented interfaces? (was Text Parsing) Ola Fosheim Grøstad
- What about goal oriented interfaces? (was Text Parsing) Chris Gray
- What about goal oriented interfaces? (was Text Parsing) Ola Fosheim Grøstad
- What about goal oriented interfaces? (was Text Parsing) Matthew Mihaly
- What about goal oriented interfaces? (was Text Parsing) Chris Gray
- What about goal oriented interfaces? (was Text Parsing) Ola Fosheim Grøstad
- What about goal oriented interfaces? (was Text Parsing) Adam Wiggins
- thoughts Matthew Mihaly
- Game Economies Timothy O'Neill Dang
- Game Economies Matthew Mihaly
- Game Economies Caliban Tiresias Darklock
- Game Economies Caliban Tiresias Darklock
- Game Economies Ola Fosheim Grøstad
- Game Economies Marian Griffith
- Game Economies Ola Fosheim Grøstad
- Game Economies Marian Griffith
- Game Economies Ola Fosheim Grøstad
- Game Economies Caliban Tiresias Darklock
- Game Economies Ola Fosheim Grøstad
- Game Economies Matthew Mihaly
- Game Economies J C Lawrence
- Game Economies Timothy O'Neill Dang
- Game Economies Koster, Raph
- Game Economies J C Lawrence
- Game Economies Adam Wiggins
- Game Economies Caliban Tiresias Darklock
- Game Economies Greg Miller
- Game Economies Ross Nicoll
- Game Economies Koster, Raph
- Game Economies Ola Fosheim Grøstad
- Game Economies Jo Dillon
- Game Economies Ross Nicoll
- Game Economies Marian Griffith
- Game Economies Jo Dillon
- Game Economies Hans-Henrik Staerfeldt
- Game Economies Koster, Raph
- Game Economies Timothy O'Neill Dang
- Game Economies Marian Griffith
- Game Economies J C Lawrence
- Game Economies Timothy O'Neill Dang
- Game Economies Ola Fosheim Grøstad
- Game Economies Timothy O'Neill Dang
- Game Economies Timothy O'Neill Dang
- Game Economies Timothy O'Neill Dang
- Game Economies Caliban Tiresias Darklock
- Game Economies Jo Dillon
- Game Economies Timothy O'Neill Dang
- Game Economies Jo Dillon
- Game Economies Matthew Mihaly
- Game Economies Koster, Raph
- Game Economies J C Lawrence
- Game Economies Greg Munt
- Game Economies Matthew Mihaly
- Game Economies Jon A. Lambert
- Game Economies Shawn Halpenny
- Game Economies Brandon J. Rickman
- Game Economies Jon A. Lambert
- Game Economies Shane King
- Game Economies Caliban Tiresias Darklock
- Game Economies Matthew Mihaly
- Game Economies Koster, Raph
- Game Economies Nathan F Yospe
- Game Economies Ola Fosheim Grøstad
- Game Economies J C Lawrence
- Game Economies J C Lawrence
- Game Economies Caliban Tiresias Darklock
- Game Economies Matthew Mihaly
- Game Economies Caliban Tiresias Darklock
- Game Economies Koster, Raph
- Game Economies Brandon J. Rickman
- Game Economies Marian Griffith
- Game Economies Katrina McClelan
- Game Economies Adam Wiggins
- Game Economies Katrina McClelan
- Game Economies Albert
- Game Economies Jp Calderone
- Game Economies Laurel Fan
- Game Economies Albert
- Game Economies Charles Hughes
- Game Economies J C Lawrence
- Game Economies Matthew Mihaly
- Game Economies Mik Clarke
- Game Economies Ola Fosheim Grøstad
- Game Economies Ling
- Game Economies Ling
- Game Economies Mik Clarke
- Rooms Greg Munt
- Parsing Text Output Jon A. Lambert
- Parsing Text Output Chris Gray
- MUD-Dev request rejected Greg Miller
- Interface/Custom Clients Greg Miller
- Languages (slightly offtopic, was Text Parsing)y Mark Gritter
- Languages (slightly offtopic, was Text Parsing)y Caliban Tiresias Darklock
- Pay Muds & Free Muds - working together, or against each other? Greg Munt
- Pay Muds & Free Muds - working together, or against each other? Caliban Tiresias Darklock
- Pay Muds & Free Muds - working together, or against each other? Matthew Mihaly
- Pay Muds & Free Muds - working together, or against each other? Koster, Raph
- Pay Muds & Free Muds - working together, or against each other? Ross Nicoll
- Pay Muds & Free Muds - working together, or against each other? Richard Bartle
- Pay Muds & Free Muds - working together, or againsteach other? Caliban Tiresias Darklock
- Pay Muds & Free Muds - working together, or against each other? Christopher Allen
- Pay Muds & Free Muds - working together, or against each other? Richard Bartle
- CVS repository for ScryMUD is online at scry.wanfear.com Ben Greear
- Mihaly's Combat Greg Munt
- Mihaly's Combat Matthew Mihaly
- Looking for UML David95037@aol.com
- Looking for UML Greg Munt
- Looking for UML David95037@aol.com
- Slogans (Game Economies) Caliban Tiresias Darklock
- Slogans (Game Economies) Ola Fosheim Grøstad
- A couple Qs, and thanks Ben Greear
- Understanding and "should-ness" Matthew Mihaly
- Understanding and "should-ness" Caliban Tiresias Darklock
- Personalities J C Lawrence
- realism Matthew Mihaly
- Gender and Mud Development Nathan F Yospe
- Gender and Mud Development Greg Miller
- Gender and Mud Development Katrina McClelan
- Gender and Mud Development Jon A. Lambert
- Gender and Mud Development Matthew Mihaly
- Gender and Mud Development Jon A. Lambert
- Gender and Mud Development Caliban Tiresias Darklock
- Gender and Mud Development David Holz
- Gender and Mud Development Jon A. Lambert
- Gender and Mud Development Matthew Mihaly
- Gender and Mud Development Greg Miller
- Gender and Mud Development J C Lawrence
- Gender and Mud Development Koster, Raph
- Gender and Mud Development J C Lawrence
- Gender and Mud Development Ola Fosheim Grøstad
- Gender and Mud Development J C Lawrence
- Gender and Mud Development Koster, Raph
- Gender and Mud Development Greg Munt
- Gender and Mud Development Greg Miller
- Gender and Mud Development Ola Fosheim Grøstad
- Gender and Mud Development Marian Griffith
- Gender and Mud Development Matthew Mihaly
- Gender and Mud Development Caliban Tiresias Darklock
- Gender and Mud Development Ola Fosheim Grøstad
- Gender and Mud Development Adam Wiggins
- Gender and Mud Development Travis S. Casey
- Gender and Mud Development Marian Griffith
- Newbies (was Text Parsing) John Hopson
- Newbies (was Text Parsing) Caliban Tiresias Darklock
- Average play time? Timothy O'Neill Dang
- Average play time? Caliban Tiresias Darklock
- Average play time? Koster, Raph
- {OT} Gender and Mud Development Wendy Winkler
- AOL lawsuit (was text parsing) Koster, Raph
- Sexual archetypes claw@kanga.nu
- Systems and concepts Caliban Tiresias Darklock
- Gender and Mud Development (back on topic, some) Katrina McClelan
- Gender and Mud Development (back on topic, some) Koster, Raph
- Gender and Mud Development (back on topic, some) Greg Miller
- Gender and Mud Development (back on topic, some) J C Lawrence
- Gender and Mud Development (back on topic, some) Jon A. Lambert
- Games within Games [Was: Gender and Mud Development] Kristen Koster
- Games within Games [Was: Gender and Mud Development] Greg Miller
- Games within Games [Was: Gender and Mud Development] Kristen Koster
- Games within Games [Was: Gender and Mud Development] Jon A. Lambert
- Games within Games [Was: Gender and Mud Development] Kristen Koster
- Games within Games [Was: Gender and Mud Development] Marian Griffith
- Tactical Combat and Traps (was the gender thread) Katrina McClelan
- Game construction and a big mistake Caliban Tiresias Darklock
- Game construction and a big mistake Marc Bowden
- Game construction and a big mistake Greg Miller
- Game construction and a big mistake Matthew Mihaly
- Game construction and a big mistake Willowreed@aol.com
- Gender and Mud Development (back on topic, some) Caliban Tiresias Darklock
- Gender and Mud Development (back on topic, some) Koster, Raph
- Gender and Mud Development (back on topic, some) claw@kanga.nu
- Gender and Mud Development (back on topic, some) Marc Bowden
- Client-Server vs. Peer-to-Peer -- Implementing DIS on the Internet claw@kanga.nu
- Goals and directions (was the gender thing) Caliban Tiresias Darklock
- MUD-Dev digest, Vol 1 #93 - 27 msgs Dr. Cat
- MUD-Dev digest, Vol 1 #93 - 27 msgs Greg Miller
- MUD-Dev digest, Vol 1 #93 - 27 msgs Koster, Raph
- MUD-Dev digest, Vol 1 #93 - 27 msgs Ola Fosheim Grøstad
- Gender and Mud Development (drifting off topic again) S. Patrick Gallaty
- Laws of Online World Design (was: realism) Koster, Raph
- Game construction and a big mistake Koster, Raph
- memory and speed Matthew Mihaly
- memory and speed Adam Wiggins
- memory and speed J C Lawrence
- memory and speed J C Lawrence
- memory and speed Matthew Mihaly
- memory and speed Adam Wiggins
- memory and speed Chris Gray
- memory and speed Miroslav Silovic
- memory and speed Caliban Tiresias Darklock
- memory and speed Mark Gritter
- memory and speed Ben Greear
- memory and speed Matthew Mihaly
- memory and speed S. Patrick Gallaty
- memory and speed Adam Wiggins
- memory and speed Brad Leach
- memory and speed Petri Virkkula
- Virtual worlds based on real world history Greg Munt
- Stockmarkets... Ola Fosheim Grøstad
- Games within Games Jesse Farinacci
- ADMIN: Posting authority J C Lawrence
- thoughts on game economies Travis S. Casey
- thoughts on game economies Caliban Tiresias Darklock
- thoughts on game economies Travis Casey
- thoughts on game economies Koster, Raph
- thoughts on game economies Travis S. Casey
- thoughts on game economies Koster, Raph
- thoughts on game economies Hans-Henrik Staerfeldt
- thoughts on game economies Jo Dillon
- thoughts on game economies Greg Miller
- thoughts on game economies Matthew Mihaly
- thoughts on game economies Greg Miller
- thoughts on game economies Matthew Mihaly
- thoughts on game economies Jeremy Music "Sterling"
- thoughts on game economies Robert Brady
- thoughts on game economies Ling
- thoughts on game economies Caliban Tiresias Darklock
- thoughts on game economies Alex Oren
- thoughts on game economies Albert
- thoughts on game economies Adam Wiggins
- thoughts on game economies Travis S. Casey
- thoughts on game economies Travis S. Casey
- memory and speed Matthew Mihaly
- memory and speed Shawn Halpenny
- Game economics Matthew Mihaly
- Game economics Nathan F Yospe
- Playing the monsters David95037@aol.com
- Playing the monsters Katrina McClelan
- Playing the monsters Caliban Tiresias Darklock
- How to debug a method taking a variable list of arguments? Ben Greear
- Twisted Reality claw@kanga.nu
- ADMIN: Searching on MUD-Dev archives claw@kanga.nu
- Object Obsolescence [ WAS: thoughts on game economies ] Shawn Halpenny
- SAR Adam Wiggins
- speed problems update Matthew Mihaly
- speed problems update Quzah [softhome]
- ADMIN: NoMail Subscriptions -- please reconfigure J C Lawrence
- Fwd: Books on Compilers Caliban Tiresias Darklock
- UM2 Greg Munt
- 3D Anarchy Adam Wiggins
- Properties of computer languages Caliban Tiresias Darklock
- Properties of computer languages Jon Leonard
- Properties of computer languages Mark Gritter
- Properties of computer languages Cynbe ru Taren
- Properties of computer languages Travis S. Casey
- Properties of computer languages David95037@aol.com
- Properties of computer languages Travis S. Casey
- Properties of computer languages Hans-Henrik Staerfeldt
- Properties of computer languages Caliban Tiresias Darklock
- Properties of computer languages Joey Hess
- Properties of computer languages Chris Gray
- Properties of computer languages David95037@aol.com
- Properties of computer languages Adam Wiggins
- Properties of computer languages Caliban Tiresias Darklock
- Properties of computer languages Mik Clarke
- Different approaches? Dani Dumitrescu
- Different approaches? Koster, Raph
- i got's a question for yall on the best way to do something.. PartyG2816@aol.com
- i got's a question for yall on the best way to do something.. Marc Hernandez
- i got's a question for yall on the best way to do something.. Jim Clark
You still want a state machine, but that horrible 1000 line switch is not
a good way to implement a state machine. The first step to make a decent
deterministic state machine would be to write down a list of states:
connect -> login -> new char -> new char passwd -> ect..
|
-----> old char -> get old char password -> playing
|
--> bad password
After you have a decent map of state transitions, you can get down
to the implementation. (It's been a few years since I did any large
state machines so bear with me)
First create a nice list of constants, one for each state.
const int STATE_CONNECT = 0;
const int STATE_LOGIN = 1;
const int STATE_OLD_CHAR = 2;
const int STATE_NEW_CHAR = 3;
ect..
const int MAX_STATE = 20; // Or whatever
Then make a large table which maps old state vs. next state.
With function pointers
const STATEHANDER STATE_TABLE[MAX_STATE][MAX_STATE] {
// Next State (the one we are moving to)
// Connect Login Old Char NewChar
/* Connect */ { NULL, Login, NULL, NULL },
/* Login */ { NULL, NULL, OldChar, NewChar },
/* Old Char */ { NULL, NULL, NULL, NULL },
/* New Char */ { NULL, NULL, NULL, NULL }
};
This table defines the links between states, as well as where to go next.
Some function such as this will handle that.
void HandleState( Ch* pCh, const String& strIn )
{
// I can't rember if this is the right member function
// syntax, and I'm to lazy to dig it up
// And you should of course check for NULL's
pCh->*( STATE_TABLE[pCh->m_nLastState][pCh->m_nCurrState] )( strIn );
}
And lastly an example of a STATEHANDLER, in psuado code
void Ch::Login( const String& strIn )
{
if( strIn IS AN old player )
m_nLastState = m_nCurrState;
m_nCurrState = STATE_OLD_CHAR;
Out( "some message about entering a password" );
}
else
{
m_nLastState = m_nCurrState;
m_nCurrState = STATE_NEW_CHAR;
Out( "some message about new characters and some instructions about
entering a new password" );
}
}
-Jim
----- Original Message -----
From: <PartyG2816@aol.com>
To: <mud-dev@kanga.nu>
Sent: Thursday, June 17, 1999 2:55 AM
Subject: [MUD-Dev] i got's a question for yall on the best way to do
something..
> Ok, any of yall familiar with the ROM code base? Tis a text based mud.
Well,
> they handle character creation via this big, ugly, confusing state
machine..
> Hard as hell to find stuff in, and just a bitch to look at. Well, I've
> finally got around to starting my own mud in C++, tired of modifying ROM's
> and Oblivions yadda yadda, and gotten to the point where I need to figure
out
> a way to handle this.. The only way I know of doing it is via a big ugly
> state machine like ROM and most of the other's that I've seen use.. Mainly
> the Diku derivatives. What are some other ways a person might go about
doing
> it? Any input would be greatly appreciated.. And if you need more info on
> what I'm talking about, just ask and I'll try to supply ;-)
>
> Thanx,
> JD - i got's a question for yall on the best way to do something.. PartyG2816@aol.com
- i got's a question for yall on the best way to do something.. PartyG2816@aol.com
- Game Design [Simulation] Justin Lockshaw
- MUD-Dev digest, Vol 1 #105 - 12 msgs Dr. Cat
- MUD-Dev digest, Vol 1 #105 - 12 msgs Caliban Tiresias Darklock
- MUD-Dev digest, Vol 1 #105 - 12 msgs Chris Gray
- MUD-Dev digest, Vol 1 #105 - 12 msgs Mik Clarke
- MUD-Dev digest, Vol 1 #105 - 12 msgs Hans-Henrik Staerfeldt
- A little off topic - anyone receiving multiple copies of list mail? Charles Hughes
- Role playing and Multiple Goals John Bertoglio
- Critiquing Muds Marian Griffith
- Critiquing Muds Koster, Raph
- Critiquing Muds Travis Casey
- Critiquing Muds Marian Griffith
- Critiquing Muds Travis Casey
- Critiquing Muds Caliban Tiresias Darklock
- Critiquing Muds Marian Griffith
- Critiquing Muds Jon A. Lambert
- Critiquing Muds Koster, Raph
- Critiquing Muds Matthew Mihaly
- Critiquing Muds Koster, Raph
- Critiquing Muds Damion Schubert
- Critiquing Muds Ola Fosheim Grøstad
- Critiquing Muds Michael Willey
- Critiquing Muds Jon A. Lambert
- MUD-Dev: An apology J C Lawrence