08 Oct, 2008, Avaeryn wrote in the 1st comment:
Votes: 0
The RaM Development team will be having another meeting to discuss the project this Sunday at 7 pm EST.
Meetings will be held on a weekly basis at this time so changes, prospective changes, and the like can be discussed.

Everyone join us!

sulinea.arthmoor.com port 5489
08 Oct, 2008, David Haley wrote in the 2nd comment:
Votes: 0
Are the logs for these discussions available anywhere? I'd be interested in seeing what was talked about, but I generally can't make that time. :smile:
08 Oct, 2008, Avaeryn wrote in the 3rd comment:
Votes: 0
DavidHaley said:
Are the logs for these discussions available anywhere? I'd be interested in seeing what was talked about, but I generally can't make that time. :smile:

Quix (I think) logged the meeting. A log should be floating around somewhere. Quix, where are you? Where's the log?? :biggrin:

Would an alternate time work better for you? If so, then please let us know. I'm open for almost anytime on Sunday, as long as it's not past 11 pm EST. Sorry, work and such :P
08 Oct, 2008, quixadhal wrote in the 4th comment:
Votes: 0
Nope, it wasn't me! I was considering logging it, but I forgot to look up tf's log command, and I switched windows at one point, losing the scrollback buffer.

I do remember someone saying they were logging it though. Maybe they'll come forward and embarass us by posting it. :devil:
08 Oct, 2008, Avaeryn wrote in the 5th comment:
Votes: 0
quixadhal said:
Nope, it wasn't me! I was considering logging it, but I forgot to look up tf's log command, and I switched windows at one point, losing the scrollback buffer.

I do remember someone saying they were logging it though. Maybe they'll come forward and embarass us by posting it. :devil:


Embarrass us? What could *we* possibly have to be embarrassed about? :devil:
08 Oct, 2008, quixadhal wrote in the 6th comment:
Votes: 0
As long as that log doesn't show up, not a thing. :blues:
08 Oct, 2008, MacGregor wrote in the 7th comment:
Votes: 0
quixadhal said:
As long as that log doesn't show up, not a thing. :blues:

Umm… seems there really is a log floating around… :rolleyes:
09 Oct, 2008, Avaeryn wrote in the 8th comment:
Votes: 0
Here's the log for the first meeting. I tried to delete any references to time, weather, logins, and other useless stuff.
Thanks to MacGregor for sending the log. I'll make sure I make one of our next meeting so I can have it up in a more timely manner.

Enjoy!

RaM Developer Meeting 10-06-2008

Pedlar gossips 'bah, rewrite the channels to use , would be nice :D'
Quixadhal laughs and points at the output of "help channels"….help channels
No help on that word.
Avaeryn nods at Pedlar.smirk
You smirk.
Pedlar says 'no help.'
Quixadhal says 'Interesting sounding place…'You say 'should we do something totally unheard of, and release this puppy with a complete set of help files?'
Quixadhal gasps in astonishment.
Davion gasps as he realizes what you did.
Davion says 'No you didn't!'
Pedlar gasps in astonishment.
Davion says 'But hey, as long as Percilla's Pleasure Palace exists, I'm all for releasing it in any condition.'
Pedlar says 'hes a communist'grin da
You grin evilly at him.
Pedlar says 'wheres the deny button!'
Davion says 'I long for goto 1204'
Quixadhal says 'I vote we make the help command do damage to the user, based on how long the help entry is.'grin
You grin evilly.
Davion says 'Right on. Really mess with the foodies.'
Pedlar says 'haha'
Pedlar says 'Help Davion would toally anihalate you'
Pedlar says 'knowing him, hed write an entire auto biography ;)'
Davion says 'Hell ya'
Quixadhal types man gcc | wall, and runs away.
Avaeryn chuckles politely.You roll on the floor, laughing hysterically.
Davion says 'Wow. Keeping him out of the shell ;)'
Quixadhal says 'At least I didn't do man gcc | figlet | wall…..'
Pedlar says 'haha'
Pedlar says 'no shell access for joo'
Davion says 'lol'
Quixadhal says 'The folks on the 9600 baud vt220's didn't seem to like that one much.'
Pedlar says 'ehy davion guess what!'You say 'actually, once we get an svn server going, nobody would need shell access'
Davion says '…'
Davion says 'Are we forgetting about that part of C which requires compiling?'You say 'nope'You say 'let me explain how I do work on my mud'You say 'I work on the ocde on my machine at home'You say 'check it into cvs when I'm happy with it'You say 'connect to the mud, type 'rebuild'. When it says it's done, I do a copyover, et voila'
Davion says 'I take it rebuild simply pipes make?'
Pedlar says 'theres always the dev on yer own, tyest on yer own, and then up it, and let someone else compile it'You say 'pretty much, after execing a cvs update'
Davion nods.You say 'forks, does a cvs update, forks again, makes clean, forks again and makes'
Quixadhal says 'I'm more lazy… I make locally and then scp the executable up.'
Pedlar says 'i actually dev right off the server'
Asylumius says 'I'd be fine with checkout/update, dev, test, commit, done.'
Davion says 'I'm not nearly that complex at all… I just work on the live copy'
Pedlar is an old school pico and vi wizard :D
Davion says 'Kate has a built in sftp client'Pedlar nods at Davion.
Pedlar uses jEdit
Davion says 'It's like I'm deving locally'
Asylumius says 'If people wanna code on the server, they can just do a checkout to another dir and leave the running copy alone.'
Davion says 'Obviously though, with this many people, we'll need some sort of versioning'You say 'that's doable of course'
Pedlar says 'i like pico and vi, but i dun realy use em less i have too, i love jEdits sftp and works in windows :D'You nod at Davion.
Davion says 'Windows. Pfft'
Asylumius says 'So eh..'
Quixadhal lives and dies by the Holy Sword of VIM.You say 'hey, use whatever editor floats yer boat, use ed if you wish.'
Pedlar says 'i haveta use it :D'
Asylumius says 'Why don't we start with the scope of the project?'You say 'okay, sounds good'
Avaeryn nods sagely.
Sandi has entered the game.
Quixadhal shows his approval by clapping his hands together.You tackle Sandi playfully.
Avaeryn says 'sandi!'
Pedlar says 'ok, you guys get started, im outtie to food lion, and then ill be back'
Avaeryn waves goodbye to Pedlar.
Pedlar says 'OMG its Sandi'
Pedlar says 'time to make my escape while I can'
Quixadhal says 'bring us back some lion burgers!'You say 'I was hoping you'd show up!'
Asylumius says 'Projects like 1stMUD and others have actually added a large deal of extra code for features, races, classes, etc. While they also fixed bugs, I don't think the scope of the project should extend that far.'
Pedlar says 'ima idle so i dun miss nuffin'You say 'I'd agree on that. Like I posted on MudBytes, we don't want to do a DoT'
Asylumius nods.
Quixadhal says 'I agree, I would limit featurism to things that let people build or manage their games easier.'
Quixadhal says 'Race editor == good, more races in the box == bad.'Avaeryn nods in enthusiastic agreement with Asylumius.
You say 'stick with the races and classes we already have.'You nod in enthusiastic agreement with Quixadhal.
Avaeryn says 'just make editing or adding them easier maybe'
Pedlar says 'also, while were ont his topic, 1stMUD went WAY to far.'
Davion says 'Ya. We aren't trying to re-develop the game'
Asylumius says 'On the topic of editors,w e're talking expanding Ivans OLC, right?'
Avaeryn nods sagely.You say 'umm, yeah'
Avaeryn says 'fixing the bugs that would allow crashes, and making progs a lot better'
Asylumius says 'Bug fixes, improving core systems (like OLC).. updating OS / platform support..'Nibios wonders if he coluild just drop his whole olc package in here
Pedlar says 'and, the on this topic, Ivans is a good start, but building off of it some more in the essence of functionality for builders, and expanding mobprogs.'
Avaeryn nods sagely.
Avaeryn says 'nibios has a great system, especially for progs'
Davion says 'Oh?'
Pedlar is a good procrastinator, my sis will be standing outside waiitng for my ass ;)
Asylumius says 'My prog system was hard-coding functions and assignment them to rooms/objs/mobs using hooks :('
Quixadhal says 'I'd also look into having a little more fine grained memory management… something like smalloc that can keep statistics would be nice.'You nod in enthusiastic agreement with Quixadhal.
Asylumius says 'I know this is uh.. maybe too much (?) but what about strings?'You say 'what about strings?'
Pedlar says 'i think, we should convert to g++, and conver the memory to new/delete'
Davion says 'Rom uses it's own internal memory management'
Quixadhal says 'In an ideal universe, being able to use std::string would be wonderful.'
Asylumius says 'ROMs memory code is ass :('
Pedlar says 'ive done this sucessfully to my mud, and i save alot of memory usage'
Davion says 'You can type 'mem' to see said stats, Quix'You say 'yeah but that's C++, not C'
Asylumius says 'I just mean do we actually use std:'
–> Log Asylumius: string or is that too far?
Asylumius says 'I just mean do we actually use std:'
–> Log Asylumius: string or is that too far?
Davion says 'I think moving ROM away from C is a bad idea'
Asylumius says 'oops'You nod in enthusiastic agreement with Davion.
Davion says 'However, exposing the options for C++ isn't.'
Asylumius says 'So.. no g++?'You say 'no. No g++'
Asylumius says 'I like the idea of requiring it to compile in g++ even if we dont use its features'
Davion nods at Asylumius.You say 'oh, I can agree with that.'
Pedlar says 'i think we should convert to C++ but not FULLY convert, stay with the C for functions, but move over slightly into C++ territory as well for memory management and bits and stuff, and to give the new aspiring use of RaM the ability to progress easier 'You say 'heh, somewhat reluctantly, I should mention'
Pedlar says 'into C++ eventually.'
Asylumius says 'I think the C++ question is going to come down to how many of the things we discuss here boil down to "We need C++ for that"'
Quixadhal says 'I suppose, although I really don't see younger people wanting to use C at all these days. I don't want to use OOP technices, but using a few of the C++ features would make life a LOT eaiser.'
Asylumius nods at Quixadhal.
Davion says 'Oh god ya. STL Containers are awesome'
Asylumius says 'ROM is C, and as a coder it should "feel" like C'
Sandi nods at Asylumius.
Asylumius says 'I'm a big fan of both the MUD itself (player/builder) and as a coder "feeling" like ROM'
Davion isn't so hot on std::string, but std::map/list/vector/bitset, Mmm.agree a
You nod in enthusiastic agreement with Asylumius.
Asylumius says 'without being old and busted'
Asylumius nods at Davion.
Asylumius says 'Way too many people get into trouble with linked lists'
Quixadhal says 'Hmmm, so the game is written for the coder? That's ok if so, just wanting to clarify the audience.'
Davion says 'There's also a ton of code in there for managing said lists that simply don't need to be there.''umm, how so?
You say 'umm, how so?'
Asylumius says 'Not written for coders necessarily, I just think it should remain ROM (as much as possible)'
Pedlar says 'I aggree with the feel of ROM with Asyl, but, what im talking bout with the C++ would keep the coding feel of ROM, jus elliminate the mass memory corruptions of rom'
Quixadhal says 'I mean, using C++ makes things simpler in many ways, but it would change the "feel" and require a C++ compiler.''so don't add any memory corruptions :P It's not all that hard
You say 'so don't add any memory corruptions :P It's not all that hard'
Asylumius says 'Memory is an issue. The way ROM does it is great if you never ever make a mistake..''so we make it harder to make mistakes
You say 'so we make it harder to make mistakes'
Pedlar says 'if we convert to C++ and use new and delete in macros, to make it less confusing, and easier, we can eliminate alot of memory corruption, ROM comes stock with memory corruption in itself.'
Davion says 'The free lists are a waist of time. It's an out-dated programming practice.'
Asylumius nods at Davion.
Pedlar says 'ok, i jus got the phonecall of, come and get my ass, so im outtie'
Pedlar says 'ill catchup when i get back'
Quixadhal says 'free lists come from the days when malloc() used to be expensive.'
Davion grins evilly.
Asylumius says 'I understand some of us may have computers that are two decades old in our basements..'
Davion says 'Same with fpReserve'
Asylumius says '.. but we're not coding around them'
Asylumius nods at Davion.
Quixadhal says 'not even in memory usage, but in the OS call actually took a LOT of time.''yeah, we can dump fpReserve
You say 'yeah, we can dump fpReserve'
Quixadhal says 'I don't think 1992 issues are a big problem nowadays…. yeah, fpReserve is another one.'
Avaeryn says 'would be awesome to include a way to make finding those leaks easier'
Pedlar says 'oh, and Nib, on making it hard to make a mistake, it don't matter how dummy proof you try and make it there will always be the newbie, who will find that hole, and make it ;)'
Davion says 'Valgrind, Avaeryn ;)'
Asylumius says 'If we use new/delete, we don't have it'
Asylumius says 'have to*'
Pedlar says 'alright, im out :D'
Asylumius gallantly tips his hat to Pedlar.
Quixadhal waves goodbye to Pedlar.tip p
You tip your hat to Pedlar.
Sandi waves goodbye to Pedlar.
Avaeryn waves goodbye to Pedlar.
Pedlar says 'ill be back shortly'
Pedlar playfully tackles Avaeryn.'I'll agree that making it foolproof just develops bigger fools
You say 'I'll agree that making it foolproof just develops bigger fools'
Davion says 'Well, if we're going to get into C++ features and bring up hard-to-manage pointers, we could always use some sort of smart pointer.'
Grumny has entered the game.
Avaeryn says 'hi grumny!'
Davion gasps as he realizes what Grumny did.
Quixadhal pokes Grumny in the ribs.
Davion says 'You're late!'
Grumny gossips 'howdy'
Asylumius says 'another issue with C++ is it basically means all ROM snippets and whatnot dont work without some (possibly a lot) of tweaking'
Asylumius says 'do we care?'
Grumny says 'sorry :)''yeah, definitely
You say 'yeah, definitely'
Davion says 'Well that is a pretty big deal. We'd have to spawn our own set of snippets'
Asylumius says 'Then we may want to limit the way we use C++'
Davion says 'Which may not be such a bad thing'
Asylumius nods.
Davion says 'Then modifications that don't make it into the release don't have to be dumped, and can be released as snippets''for instance, we shouldn't add Vassago's snippet, IMO, but you can bet that 85% of the people who use the mud will want to add it
You say 'for instance, we shouldn't add Vassago's snippet, IMO, but you can bet that 85% of the people who use the mud will want to add it'
Asylumius says 'Well, I've always said half our repository (mostly ROM) is so broken and worthless its hardly worth having'
Davion nods at Asylumius.
Quixadhal says 'I don't know of ANY codebase where snippets go in cleanly… the extra work will just mean people actually understand what they do instead of tossing them all in.'
Davion says 'He does say that'
Asylumius chuckles politely.
Avaeryn nods sagely.
Sandi says 'If it's going to be "ROM", I think it has to accept ROM snippets and areas.'
Asylumius says 'Areas are a must, IMHO.''heh, on the other hand, htat's true, there aren't really all that many good snippets out there
You say 'heh, on the other hand, htat's true, there aren't really all that many good snippets out there'
Avaeryn nods in enthusiastic agreement with Asylumius.
Asylumius says 'Snippets.. I'm unsure.'agree sandi
You nod in enthusiastic agreement with Sandi.
Quixadhal says 'accept yes, but not make it so cut-and-paste is supported.'
Asylumius says 'Hell, most of those snippets probably dont even compile on updated ssytems'
Avaeryn says 'or just do like tbaMUD does, release a new version every so often that contains the most up-to-date and best features'
Asylumius says 'That said, I wouldn't be against rewriting some of the popular stuff for this anyway''hell, most of them didn't compile on the say they were released :P
You say 'hell, most of them didn't compile on the say they were released :P'
Quixadhal says 'and yes, the old ROM area format should cleanly import, even if we use our own format.''yeah I'm for that, too.
You say 'yeah I'm for that, too.'
Davion says 'It'll be easier for it to cleanly import if we use our own format.'
Asylumius nods at Quixadhal.
Davion says 'Because the old loaders would simply not be touched.''should we make it an option to export rom format areas files?
You say 'should we make it an option to export rom format areas files?'
Asylumius says 'I think we want our own format because the current one sucks'
Asylumius says 'We'll want two sets of load()'
Davion says 'Well'
Davion says 'Threee'
Asylumius says 'and probably just one set of save, but I dunno'
Davion says 'There's already two ;)'
Asylumius says 'fine, three :P'
Sandi says 'Please save original format. :)'
Asylumius says 'I think anyone who uses ROM has already added their own more readable format'
Quixadhal says 'I'd really prefer using our own format… if you insist, we could have an export routine that would make stock-compatible output.''QM or 1st mud has two load()s, stock rom only has one
You say 'QM or 1st mud has two load()s, stock rom only has one'
Asylumius says 'We'll load stock ROM areas and save to them (with some possible data loss)'
Asylumius says 'as well as our own''oh, inevitable data loss
You say 'oh, inevitable data loss'Quixadhal says 'Yep, that's what I meant. :)'
Davion says 'Stock ROM should have two. MOBILESOLD, etc.'
Asylumius says 'That could be a more readable format too, or XML, or .. I dunno.''oh, right; I forgot about old format
You say 'oh, right; I forgot about old format'
Quixadhal says 'XML is too ugly for humans… but a key/value file is a good in-between.'
Davion says 'Stan, the guy who made DemonDance, has a snippet widly available for key'd loading'
Asylumius nods.
Davion says 'And saving.''any licensing issues with it?
You say 'any licensing issues with it?'
Asylumius says 'key/value pairs would be fine.'
Davion shakes his head.
Quixadhal says 'and please make flags and such stored as names!',would be very happy with key/value pairs
Nibios would be very happy with key/value pairs
Avaeryn says 'ok guys, i have to run. aggravating child'
Avaeryn waves happily.
Avaeryn has left the game.
–> Avaeryn rejoins the real world.'yeah, that's an excellent idea too, flags as names
You say 'yeah, that's an excellent idea too, flags as names'
Asylumius nods.
The lightning has stopped.
Davion says 'I don't think it was even released with a license. Hoorah public domain ;)'
Quixadhal says 'I hate having to look up in the header files to figure out WTH "CDS" means.'
Davion grins evilly.
Asylumius says 'so something like: "ROOM_FLAGS dark no_recall" ?''along the same lines, put human or dwaref in pfiles/area files, not 1 and 3 (or whatever)
You say 'along the same lines, put human or dwaref in pfiles/area files, not 1 and 3 (or whatever)''yeah something like that
You say 'yeah something like that'
Asylumius says 'So fewer magic values..'
Davion nods.nod
You nod.
Quixadhal says 'yep, and exits…. "North" instead of D0.'
Sandi says 'Classes in the pfiles.'
Asylumius says 'While we're talking about area format and stuff..'nod
You nod.
Asylumius says 'BITS!'grin
You grin evilly.
Quixadhal says 'I tossed a big fat example on the boards…. just an idea.'
Davion says 'Bits are very tricky'
Asylumius says 'Especially without C++''we have lots of options for bits
You say 'we have lots of options for bits'
Davion says 'As I mentioned earlier, because of the way object values are handled, it makes it pretty difficult to make seamless integration.''we cna stick with 32, but I don't think aqnybody wants that
You say 'we cna stick with 32, but I don't think aqnybody wants that'
Asylumius says 'We want infinite.. and we want to work with stock ROMs areas/stuff'
Quixadhal says 'yep, as much as I don't like bits, using one of the snippets that allows infinite is probably good.''we can get 64 just by using long longs
You say 'we can get 64 just by using long longs''and anybody used any of the infinite bit systems? That's ideal, if it works
You say 'and anybody used any of the infinite bit systems? That's ideal, if it works'
Asylumius says 'I cheated. I just used arrays of 32.'
Davion says 'I use Runter's a lot.',stoile Smaug's xbits system
Nibios stoile Smaug's xbits system'stole, even
You say 'stole, even'
Davion says 'I dunno about that system. It does some pretty funky stuff with memory'
Asylumius says 'We need to decide which way is going to co-exist with ROM the best''true. We want to be able to load any area file that loaqds into stock rom
You say 'true. We want to be able to load any area file that loaqds into stock rom'
Davion says 'If we put in an infinite bit code, object values need to be reworked'
Quixadhal says 'that's just work in the import routine.'nod
You nod.'more of an issue for exporting, really
You say 'more of an issue for exporting, really'
Asylumius says 'we need code to load regular bit fields and possibly some mapping''I know Sandi wants export, but I won't lose any sleep if we can't do it
You say 'I know Sandi wants export, but I won't lose any sleep if we can't do it'
Asylumius says 'but the whole using bits for object values, player flags, etc. gets tricky'
Quixadhal says 'so the loader code gets tweaked, no biggie. I wrote a converter from DikuMUD to Forgotton Realms LpMUD.. it's not that hard.''I'ved imported envy areas into rom
You say 'I'ved imported envy areas into rom'
Davion says 'I've imported Smaug and ROT into ROM'
Davion says 'Importing stuff is easy''yep, I think that's what we're all saying
You say 'yep, I think that's what we're all saying'
Grumny disappears into the void.
Davion gasps in astonishment.
Asylumius says 'I'm less concerned with import/export as much as I am the fact that ROM uses plain old bits for *everything*'
Davion says 'Ya know'
Quixadhal says 'Yeah, all the places in the code that do if(foo & BIT_BORK|BIT_FOO) need to become if(is_set(foo, bork) || is_set(foo, foo))''true
You say 'true'
Davion cringes in terror!
Quixadhal says 'painful, but it's the "Right Thing to DO".''it's not that big a deal; I've been through it already
You say 'it's not that big a deal; I've been through it already'
Davion nods.
Quixadhal says 'grep said the frog'
Quixadhal says 'sed is your friend'nod
You nod.
Quixadhal says 'Is Runter's code stable?'
Asylumius says 'but again, what system?'
Davion says 'Oh ya'
Davion says 'Very simple too''there really aren't a whole lot of places like that in rom. Sure, plenty in any mud that's had a bit of modificationQuixadhal says 'I'd go for that then, it looked like a clean API.'
You say 'there really aren't a whole lot of places like that in rom. Sure, plenty in any mud that's had a bit of modification''where can we get a copy of Runter's system?
You say 'where can we get a copy of Runter's system?'
Asylumius says 'MB? I think Kyndig had it.'
Quixadhal says 'I think it's bitmasks 2.1 on mudbytes.'
Davion says 'And because they're still true bits, you can fake it if you need to use int values'
Davion says 'http://www.mudbytes.net/index.php?a=file...'
Quixadhal says 'yep, even though we won't… cause that would be naughty.'
Davion says 'You would with object values…'Quixadhal says 'I noticed it had serialization too.',runs off to grab a copy of it
Nibios runs off to grab a copy of it
Quixadhal says 'well, not in the file formats… necessarily.'
Quixadhal says 'you don't need to use ints at that level, but yeah… for on the fly changes in memory.''well, we're going to use names for flags anyway, right?
You say 'well, we're going to use names for flags anyway, right?'
Quixadhal says 'IE: I cast poison on the loaf of bread you're holding'
The sun slowly disappears in the west.'which means we can actually change our internal bit system without messing up any area files
You say 'which means we can actually change our internal bit system without messing up any area files'
Quixadhal says 'yeah, no reason not to in the files.'
Asylumius says 'sorta. but we still need the current stuff to load the old areas'
The night has begun.
Asylumius says 'the "original" format would still load the bits the old fashioned way'
Quixadhal says 'that's just importing though. we don't need to keep the bits in the same order or anything.'
Asylumius says 'right'
Quixadhal says 'it just gets translated as it's read in.'
Asylumius says 'did we decide we were leaving memory alone?'
Asylumius says 'recycle lists and all'
Davion says 'I think we'd have to leave the internal string handler a lone, but recycling and stuff just needs to go''i can live with free lists, but if everybody wants to junk them, that's okay too
You say 'i can live with free lists, but if everybody wants to junk them, that's okay too'
Davion says 'Needlessly increases the footprint''meh, not really
You say 'meh, not really'
Asylumius says 'and for bits.. Runters code.'
Quixadhal says 'I'm all for simplifying… calloc/free doesn't take any CPU to run these days'
Quixadhal says 'I'd rather free the mallocs and allocate them again, than manage a recycle list.'
Davion says 'If we're going to use c++ we'd have to use new/delete for any structure that contains a STL member'
Asylumius says 'I thought we were gonna compile with g++, but avoid the STL'
Davion prays for transportation!
Davion said if ;)
Quixadhal says 'yes, that could be another bridge though.''actualy I thought we were going to compile with gcc, but maintain the apability of compiling with g++
You say 'actualy I thought we were going to compile with gcc, but maintain the apability of compiling with g++'
Quixadhal says 'we can clean up the current memory system before we really think about using stl and friends.'
Asylumius nods at Quixadhal.
Davion nods.
Asylumius says 'Color.'
Quixadhal says 'I'd say let's compile with g++, but just not use C++ specific features.'
Asylumius nods.
Davion nods at Quixadhal.
Quixadhal says 'That way, nobody adds the words "class" or "type" or "bool" behind our backs.'
Davion says 'It does enforce stricter guide lines''I thought you were concerned with footprint :P
You say 'I thought you were concerned with footprint :P'
Asylumius says 'It needs a color parser, but IMHO, all the fancy customization stuff is a feature of the game and probably outside the scope of improving the code'
Davion says 'Compiling with g++ doesn't increase the footprint unless you include c++ headers''it still mangles names, doesn't it?
You say 'it still mangles names, doesn't it?'
Asylumius says 'It should compile with g++, which means avoiding reserved keywords, but we aren't committed to using C++ yet.'
Asylumius says 'So ch->class will be changed right away''that's already changed in Quixadhal's code
You say 'that's already changed in Quixadhal's code''or Davion's, or whoever did the original G++ cleanup
You say 'or Davion's, or whoever did the original G++ cleanup'
Asylumius nods.
Quixadhal says '-rwxr-x— 1 quixadhal users 3100 Oct 5 19:55 hello; '-rwxr-x— 1 quixadhal users 3492 Oct 5 19:55 hello++; '-rw-r—– 1 quixadhal users 92 Oct 5 19:55 hello.c'
Quixadhal grumbles and growls. You wonder what's wrong…
Asylumius raises an eyebrow.
Quixadhal says 'I was pointing out that compiling the same code in g++ does add a little, but not much.'
Davion gasps in astonishment.
Quixadhal says 'I thought my ; would work… sorry.''something over 10% in that example
You say 'something over 10% in that example'
Quixadhal says 'Yep, but a good chunk of that is one-use-only, so it won't grow with the size of the code.'
Asylumius says 'Insignificant :P'
Quixadhal says 'so for a 500K executable, it's probably more like 2.'
Asylumius says 'Again, I'm glad we all used to have shitty computers.. but we don't anymore :)''ya kinow, this is the mentality that ends up with half gig operating systems
You say 'ya kinow, this is the mentality that ends up with half gig operating systems'
Grumny nods.
Grumny says 'I think we should pretend we still have shitty computers'
Grumny says 'let the end user make use of all the extra'
Quixadhal says 'actually, some of that is because of backward compatibility…. keeping emulation for the old 8088 DOS binaries, ya know?''I already offered to drag out my old 486 :P
You say 'I already offered to drag out my old 486 :P'
Asylumius says 'It's hardly enough of a difference to warrant avoiding g++''well the half gig operating system I'm thinking of tossed out support for most of those old 8088 binaries anyway
You say 'well the half gig operating system I'm thinking of tossed out support for most of those old 8088 binaries anyway'
Quixadhal says 'I can install slackware 3 on a virtual machine, if that helps… might be gcc 2.95.''hey I still have a cd with slack 2.2.0.1
You say 'hey I still have a cd with slack 2.2.0.1'
Quixadhal says 'I assume vmware will let me allocate only 16M of RAM… we're making a pimp box for the day.',might have an 0.99 kernel somewhere
Nibios might have an 0.99 kernel somewhere
Davion says 'My 386 doesn't work anymore :('
Asylumius says 'We want a leaner, faster ROM.. but we also want someone that is going to accomodate your average coder on your average machine (today)'
Grumny nods.'okay
You say 'okay'
Quixadhal says 'Yep, and getting rid of the tricks that were needed to run the game on a 486 with 8M will make things cleaner.'
Asylumius nods.
Asylumius says 'any BSD fans?'
Quixadhal says 'Not that *I* care, but using g++ might even make it possible for some people to compile with visual studio. *shudder*'
Darva has entered the game.
Quixadhal says 'I use OpenBSD on my firewall. :)''good grief, visual studio??
You say 'good grief, visual studio??'shud
You shudder at the horror and repress tears.
Quixadhal says 'Well, I did say "some people".'
Asylumius says 'To be honest, I could care less if it compiles under windows''actually, I'd been meaning to ask if we were gonna drop msdos and/or mac suppoort
You say 'actually, I'd been meaning to ask if we were gonna drop msdos and/or mac suppoort'
Davion says 'Especially with AndLinux around'
Davion says 'That thing simply rules.'agree a
You nod in enthusiastic agreement with Asylumius.
Asylumius says 'I'd drop 'em, ya'
Quixadhal nods.
Davion agrees absolutely.
Davion says 'Screw Gates.'
Asylumius says 'OSX is *nix now so..'
Darva says 'Not that the ms-dos support was ever that useful in the first place.'
Davion says 'It's a moto of mine.'
Quixadhal says 'msdos is silly, and most macs nowadays will be OS X''so we change game_loop_unix() to game_loop() and toss the other, sounds good to me
You say 'so we change game_loop_unix() to game_loop() and toss the other, sounds good to me'
Asylumius says 'plus remove all the various #IF YOUROSSUCKS and prototypes''yep
You say 'yep'
Quixadhal grins evilly.'speaking of which, clean all that crap outta the top of comm.c
You say 'speaking of which, clean all that crap outta the top of comm.c'
Quixadhal says 'and no Amiga support either…just in case.'
Darva says 'Don't drop the nocrypt stuff though, so as to make sure cygwin still works.''cant' get a libcrypt for cygwin?
You say 'cant' get a libcrypt for cygwin?'
Quixadhal says 'or just include our own routine for crypt.'
Darva says 'I don't beleive so. And that's what the nocrypt define does for cygwin.'
Quixadhal says 'as long as the passwords are only used by the MUD, it just has to not be crackable by a captain crunch toy.''we would have to roll our own though, can't use gnu's
You say 'we would have to roll our own though, can't use gnu's'
Asylumius says 'i dont care either way.'
Davion says 'I often enable nocrypt for my MUDs'
Davion says 'Simply for the fact that players are always "Wtf is my password?!"'
Asylumius says 'can we use md5?''I use crypt, but I don't go to the point of requiring ssl.
You say 'I use crypt, but I don't go to the point of requiring ssl.'
Sandi nods at Davion.
Darva says 'Ehh, if a player asks for their password, it's not hard to write a command that changes their password for them.''well, the problem with a gju implementation is it's gpl'ed, which doesn't work with the diku licenseDarva shrugs helplessly.
You say 'well, the problem with a gju implementation is it's gpl'ed, which doesn't work with the diku license'
Asylumius says 'I'm fine with crypt, honestly.'
Davion says 'Then when you tell them you can't, because it's encrypted, they talk down to you like you're an idiot.'
Davion says 'Whoa… Darva… when'd you get here?'
Davion scrolls up.
Quixadhal says 'in fact, adding a command to change the password in a player file from inside the game would be a good idea…. *wink*'
Pedlar dosent wana scroll up
Pedlar says 'someone tell me when I missed! :P'
Darva says 'About 5-10 seconds ago.''you mean like wizpass?
You say 'you mean like wizpass?'
Asylumius says 'I set their password to ""'
Asylumius says 'and they type "password anything mynewpass"'
Asylumius says 'or maybe its password mynewpass'
Darva nods at Asylumius.,knew an imp that would set a forgotten password to 'dumbass'
Nibios knew an imp that would set a forgotten password to 'dumbass'
Darva falls to the ground and rolls around laughing hysterically.
Quixadhal says 'we mostly decided on Runter's bit code, OLC, and g++ but no using C++ features yet.'
Asylumius says 'So.. leave crypt the way it is?'
Davion grins evilly.
Davion nods.'yeah, I think so
You say 'yeah, I think so'
Asylumius says 'On to color?''okay
You say 'okay'
Asylumius says 'ROM doesn't have a color code system by default'
Pedlar is still a strong supporter of new/delete'color for sure
You say 'color for sure'
Quixadhal says 'My MUD has no color, unless you sit at the green vt terminal.'
Pedlar says 'we can make one!''nerw/delete are c++ features. This is C
You say 'nerw/delete are c++ features. This is C'
Asylumius says 'Like I said before, I'm against a full brown color customization system.'
Darva raises an eyebrow at Asylumius's weird actions.
Asylumius says 'Too many people want color to work in different ways.'
Darva says 'You prefer to be stuck with the sorts of colors you get when people with astehtic taste as bad as mine select the color scheme?''you mean the systems where a player can set the color they see says in, and the color they see emotes in, and such?Asylumius says 'Some people dont even want customizable colors'
You say 'you mean the systems where a player can set the color they see says in, and the color they see emotes in, and such?'
Pedlar says 'Customization is good for player :D'
Quixadhal says 'I actually would prefer customizable color. But it's not essential in the start.'
Quixadhal says 'I would like to be able to have tags like &(damage) rather than &r.'
Sandi says 'Providing a parser for substitutions is a good thing, I think.'
Pedlar eve has a sick system to do so with custom colors'the only thing I have to say is can we please PLEASE use some character besides "{"
You say 'the only thing I have to say is can we please PLEASE use some character besides "'
Darva says '{?'
Pedlar says '{'
Quixadhal says '^?'''I use `
You say ''I use `'
Quixadhal says '%^ even?'
Pedlar says '{ is a good color code to use'
Asylumius says '

Pedlar gossips 'bah, rewrite the channels to use , would be nice :D'
Quixadhal laughs and points at the output of "help channels"….help channels
No help on that word.
Avaeryn nods at Pedlar.smirk
You smirk.
Pedlar says 'no help.'
Quixadhal says 'Interesting sounding place…'You say 'should we do something totally unheard of, and release this puppy with a complete set of help files?'
Quixadhal gasps in astonishment.
Davion gasps as he realizes what you did.
Davion says 'No you didn't!'
Pedlar gasps in astonishment.
Davion says 'But hey, as long as Percilla's Pleasure Palace exists, I'm all for releasing it in any condition.'
Pedlar says 'hes a communist'grin da
You grin evilly at him.
Pedlar says 'wheres the deny button!'
Davion says 'I long for goto 1204'
Quixadhal says 'I vote we make the help command do damage to the user, based on how long the help entry is.'grin
You grin evilly.
Davion says 'Right on. Really mess with the foodies.'
Pedlar says 'haha'
Pedlar says 'Help Davion would toally anihalate you'
Pedlar says 'knowing him, hed write an entire auto biography ;)'
Davion says 'Hell ya'
Quixadhal types man gcc | wall, and runs away.
Avaeryn chuckles politely.You roll on the floor, laughing hysterically.
Davion says 'Wow. Keeping him out of the shell ;)'
Quixadhal says 'At least I didn't do man gcc | figlet | wall…..'
Pedlar says 'haha'
Pedlar says 'no shell access for joo'
Davion says 'lol'
Quixadhal says 'The folks on the 9600 baud vt220's didn't seem to like that one much.'
Pedlar says 'ehy davion guess what!'You say 'actually, once we get an svn server going, nobody would need shell access'
Davion says '…'
Davion says 'Are we forgetting about that part of C which requires compiling?'You say 'nope'You say 'let me explain how I do work on my mud'You say 'I work on the ocde on my machine at home'You say 'check it into cvs when I'm happy with it'You say 'connect to the mud, type 'rebuild'. When it says it's done, I do a copyover, et voila'
Davion says 'I take it rebuild simply pipes make?'
Pedlar says 'theres always the dev on yer own, tyest on yer own, and then up it, and let someone else compile it'You say 'pretty much, after execing a cvs update'
Davion nods.You say 'forks, does a cvs update, forks again, makes clean, forks again and makes'
Quixadhal says 'I'm more lazy… I make locally and then scp the executable up.'
Pedlar says 'i actually dev right off the server'
Asylumius says 'I'd be fine with checkout/update, dev, test, commit, done.'
Davion says 'I'm not nearly that complex at all… I just work on the live copy'
Pedlar is an old school pico and vi wizard :D
Davion says 'Kate has a built in sftp client'Pedlar nods at Davion.
Pedlar uses jEdit
Davion says 'It's like I'm deving locally'
Asylumius says 'If people wanna code on the server, they can just do a checkout to another dir and leave the running copy alone.'
Davion says 'Obviously though, with this many people, we'll need some sort of versioning'You say 'that's doable of course'
Pedlar says 'i like pico and vi, but i dun realy use em less i have too, i love jEdits sftp and works in windows :D'You nod at Davion.
Davion says 'Windows. Pfft'
Asylumius says 'So eh..'
Quixadhal lives and dies by the Holy Sword of VIM.You say 'hey, use whatever editor floats yer boat, use ed if you wish.'
Pedlar says 'i haveta use it :D'
Asylumius says 'Why don't we start with the scope of the project?'You say 'okay, sounds good'
Avaeryn nods sagely.
Sandi has entered the game.
Quixadhal shows his approval by clapping his hands together.You tackle Sandi playfully.
Avaeryn says 'sandi!'
Pedlar says 'ok, you guys get started, im outtie to food lion, and then ill be back'
Avaeryn waves goodbye to Pedlar.
Pedlar says 'OMG its Sandi'
Pedlar says 'time to make my escape while I can'
Quixadhal says 'bring us back some lion burgers!'You say 'I was hoping you'd show up!'
Asylumius says 'Projects like 1stMUD and others have actually added a large deal of extra code for features, races, classes, etc. While they also fixed bugs, I don't think the scope of the project should extend that far.'
Pedlar says 'ima idle so i dun miss nuffin'You say 'I'd agree on that. Like I posted on MudBytes, we don't want to do a DoT'
Asylumius nods.
Quixadhal says 'I agree, I would limit featurism to things that let people build or manage their games easier.'
Quixadhal says 'Race editor == good, more races in the box == bad.'Avaeryn nods in enthusiastic agreement with Asylumius.
You say 'stick with the races and classes we already have.'You nod in enthusiastic agreement with Quixadhal.
Avaeryn says 'just make editing or adding them easier maybe'
Pedlar says 'also, while were ont his topic, 1stMUD went WAY to far.'
Davion says 'Ya. We aren't trying to re-develop the game'
Asylumius says 'On the topic of editors,w e're talking expanding Ivans OLC, right?'
Avaeryn nods sagely.You say 'umm, yeah'
Avaeryn says 'fixing the bugs that would allow crashes, and making progs a lot better'
Asylumius says 'Bug fixes, improving core systems (like OLC).. updating OS / platform support..'Nibios wonders if he coluild just drop his whole olc package in here
Pedlar says 'and, the on this topic, Ivans is a good start, but building off of it some more in the essence of functionality for builders, and expanding mobprogs.'
Avaeryn nods sagely.
Avaeryn says 'nibios has a great system, especially for progs'
Davion says 'Oh?'
Pedlar is a good procrastinator, my sis will be standing outside waiitng for my ass ;)
Asylumius says 'My prog system was hard-coding functions and assignment them to rooms/objs/mobs using hooks :('
Quixadhal says 'I'd also look into having a little more fine grained memory management… something like smalloc that can keep statistics would be nice.'You nod in enthusiastic agreement with Quixadhal.
Asylumius says 'I know this is uh.. maybe too much (?) but what about strings?'You say 'what about strings?'
Pedlar says 'i think, we should convert to g++, and conver the memory to new/delete'
Davion says 'Rom uses it's own internal memory management'
Quixadhal says 'In an ideal universe, being able to use std::string would be wonderful.'
Asylumius says 'ROMs memory code is ass :('
Pedlar says 'ive done this sucessfully to my mud, and i save alot of memory usage'
Davion says 'You can type 'mem' to see said stats, Quix'You say 'yeah but that's C++, not C'
Asylumius says 'I just mean do we actually use std:'
–> Log Asylumius: string or is that too far?
Asylumius says 'I just mean do we actually use std:'
–> Log Asylumius: string or is that too far?
Davion says 'I think moving ROM away from C is a bad idea'
Asylumius says 'oops'You nod in enthusiastic agreement with Davion.
Davion says 'However, exposing the options for C++ isn't.'
Asylumius says 'So.. no g++?'You say 'no. No g++'
Asylumius says 'I like the idea of requiring it to compile in g++ even if we dont use its features'
Davion nods at Asylumius.You say 'oh, I can agree with that.'
Pedlar says 'i think we should convert to C++ but not FULLY convert, stay with the C for functions, but move over slightly into C++ territory as well for memory management and bits and stuff, and to give the new aspiring use of RaM the ability to progress easier 'You say 'heh, somewhat reluctantly, I should mention'
Pedlar says 'into C++ eventually.'
Asylumius says 'I think the C++ question is going to come down to how many of the things we discuss here boil down to "We need C++ for that"'
Quixadhal says 'I suppose, although I really don't see younger people wanting to use C at all these days. I don't want to use OOP technices, but using a few of the C++ features would make life a LOT eaiser.'
Asylumius nods at Quixadhal.
Davion says 'Oh god ya. STL Containers are awesome'
Asylumius says 'ROM is C, and as a coder it should "feel" like C'
Sandi nods at Asylumius.
Asylumius says 'I'm a big fan of both the MUD itself (player/builder) and as a coder "feeling" like ROM'
Davion isn't so hot on std::string, but std::map/list/vector/bitset, Mmm.agree a
You nod in enthusiastic agreement with Asylumius.
Asylumius says 'without being old and busted'
Asylumius nods at Davion.
Asylumius says 'Way too many people get into trouble with linked lists'
Quixadhal says 'Hmmm, so the game is written for the coder? That's ok if so, just wanting to clarify the audience.'
Davion says 'There's also a ton of code in there for managing said lists that simply don't need to be there.''umm, how so?
You say 'umm, how so?'
Asylumius says 'Not written for coders necessarily, I just think it should remain ROM (as much as possible)'
Pedlar says 'I aggree with the feel of ROM with Asyl, but, what im talking bout with the C++ would keep the coding feel of ROM, jus elliminate the mass memory corruptions of rom'
Quixadhal says 'I mean, using C++ makes things simpler in many ways, but it would change the "feel" and require a C++ compiler.''so don't add any memory corruptions :P It's not all that hard
You say 'so don't add any memory corruptions :P It's not all that hard'
Asylumius says 'Memory is an issue. The way ROM does it is great if you never ever make a mistake..''so we make it harder to make mistakes
You say 'so we make it harder to make mistakes'
Pedlar says 'if we convert to C++ and use new and delete in macros, to make it less confusing, and easier, we can eliminate alot of memory corruption, ROM comes stock with memory corruption in itself.'
Davion says 'The free lists are a waist of time. It's an out-dated programming practice.'
Asylumius nods at Davion.
Pedlar says 'ok, i jus got the phonecall of, come and get my ass, so im outtie'
Pedlar says 'ill catchup when i get back'
Quixadhal says 'free lists come from the days when malloc() used to be expensive.'
Davion grins evilly.
Asylumius says 'I understand some of us may have computers that are two decades old in our basements..'
Davion says 'Same with fpReserve'
Asylumius says '.. but we're not coding around them'
Asylumius nods at Davion.
Quixadhal says 'not even in memory usage, but in the OS call actually took a LOT of time.''yeah, we can dump fpReserve
You say 'yeah, we can dump fpReserve'
Quixadhal says 'I don't think 1992 issues are a big problem nowadays…. yeah, fpReserve is another one.'
Avaeryn says 'would be awesome to include a way to make finding those leaks easier'
Pedlar says 'oh, and Nib, on making it hard to make a mistake, it don't matter how dummy proof you try and make it there will always be the newbie, who will find that hole, and make it ;)'
Davion says 'Valgrind, Avaeryn ;)'
Asylumius says 'If we use new/delete, we don't have it'
Asylumius says 'have to*'
Pedlar says 'alright, im out :D'
Asylumius gallantly tips his hat to Pedlar.
Quixadhal waves goodbye to Pedlar.tip p
You tip your hat to Pedlar.
Sandi waves goodbye to Pedlar.
Avaeryn waves goodbye to Pedlar.
Pedlar says 'ill be back shortly'
Pedlar playfully tackles Avaeryn.'I'll agree that making it foolproof just develops bigger fools
You say 'I'll agree that making it foolproof just develops bigger fools'
Davion says 'Well, if we're going to get into C++ features and bring up hard-to-manage pointers, we could always use some sort of smart pointer.'
Grumny has entered the game.
Avaeryn says 'hi grumny!'
Davion gasps as he realizes what Grumny did.
Quixadhal pokes Grumny in the ribs.
Davion says 'You're late!'
Grumny gossips 'howdy'
Asylumius says 'another issue with C++ is it basically means all ROM snippets and whatnot dont work without some (possibly a lot) of tweaking'
Asylumius says 'do we care?'
Grumny says 'sorry :)''yeah, definitely
You say 'yeah, definitely'
Davion says 'Well that is a pretty big deal. We'd have to spawn our own set of snippets'
Asylumius says 'Then we may want to limit the way we use C++'
Davion says 'Which may not be such a bad thing'
Asylumius nods.
Davion says 'Then modifications that don't make it into the release don't have to be dumped, and can be released as snippets''for instance, we shouldn't add Vassago's snippet, IMO, but you can bet that 85% of the people who use the mud will want to add it
You say 'for instance, we shouldn't add Vassago's snippet, IMO, but you can bet that 85% of the people who use the mud will want to add it'
Asylumius says 'Well, I've always said half our repository (mostly ROM) is so broken and worthless its hardly worth having'
Davion nods at Asylumius.
Quixadhal says 'I don't know of ANY codebase where snippets go in cleanly… the extra work will just mean people actually understand what they do instead of tossing them all in.'
Davion says 'He does say that'
Asylumius chuckles politely.
Avaeryn nods sagely.
Sandi says 'If it's going to be "ROM", I think it has to accept ROM snippets and areas.'
Asylumius says 'Areas are a must, IMHO.''heh, on the other hand, htat's true, there aren't really all that many good snippets out there
You say 'heh, on the other hand, htat's true, there aren't really all that many good snippets out there'
Avaeryn nods in enthusiastic agreement with Asylumius.
Asylumius says 'Snippets.. I'm unsure.'agree sandi
You nod in enthusiastic agreement with Sandi.
Quixadhal says 'accept yes, but not make it so cut-and-paste is supported.'
Asylumius says 'Hell, most of those snippets probably dont even compile on updated ssytems'
Avaeryn says 'or just do like tbaMUD does, release a new version every so often that contains the most up-to-date and best features'
Asylumius says 'That said, I wouldn't be against rewriting some of the popular stuff for this anyway''hell, most of them didn't compile on the say they were released :P
You say 'hell, most of them didn't compile on the say they were released :P'
Quixadhal says 'and yes, the old ROM area format should cleanly import, even if we use our own format.''yeah I'm for that, too.
You say 'yeah I'm for that, too.'
Davion says 'It'll be easier for it to cleanly import if we use our own format.'
Asylumius nods at Quixadhal.
Davion says 'Because the old loaders would simply not be touched.''should we make it an option to export rom format areas files?
You say 'should we make it an option to export rom format areas files?'
Asylumius says 'I think we want our own format because the current one sucks'
Asylumius says 'We'll want two sets of load()'
Davion says 'Well'
Davion says 'Threee'
Asylumius says 'and probably just one set of save, but I dunno'
Davion says 'There's already two ;)'
Asylumius says 'fine, three :P'
Sandi says 'Please save original format. :)'
Asylumius says 'I think anyone who uses ROM has already added their own more readable format'
Quixadhal says 'I'd really prefer using our own format… if you insist, we could have an export routine that would make stock-compatible output.''QM or 1st mud has two load()s, stock rom only has one
You say 'QM or 1st mud has two load()s, stock rom only has one'
Asylumius says 'We'll load stock ROM areas and save to them (with some possible data loss)'
Asylumius says 'as well as our own''oh, inevitable data loss
You say 'oh, inevitable data loss'Quixadhal says 'Yep, that's what I meant. :)'
Davion says 'Stock ROM should have two. MOBILESOLD, etc.'
Asylumius says 'That could be a more readable format too, or XML, or .. I dunno.''oh, right; I forgot about old format
You say 'oh, right; I forgot about old format'
Quixadhal says 'XML is too ugly for humans… but a key/value file is a good in-between.'
Davion says 'Stan, the guy who made DemonDance, has a snippet widly available for key'd loading'
Asylumius nods.
Davion says 'And saving.''any licensing issues with it?
You say 'any licensing issues with it?'
Asylumius says 'key/value pairs would be fine.'
Davion shakes his head.
Quixadhal says 'and please make flags and such stored as names!',would be very happy with key/value pairs
Nibios would be very happy with key/value pairs
Avaeryn says 'ok guys, i have to run. aggravating child'
Avaeryn waves happily.
Avaeryn has left the game.
–> Avaeryn rejoins the real world.'yeah, that's an excellent idea too, flags as names
You say 'yeah, that's an excellent idea too, flags as names'
Asylumius nods.
The lightning has stopped.
Davion says 'I don't think it was even released with a license. Hoorah public domain ;)'
Quixadhal says 'I hate having to look up in the header files to figure out WTH "CDS" means.'
Davion grins evilly.
Asylumius says 'so something like: "ROOM_FLAGS dark no_recall" ?''along the same lines, put human or dwaref in pfiles/area files, not 1 and 3 (or whatever)
You say 'along the same lines, put human or dwaref in pfiles/area files, not 1 and 3 (or whatever)''yeah something like that
You say 'yeah something like that'
Asylumius says 'So fewer magic values..'
Davion nods.nod
You nod.
Quixadhal says 'yep, and exits…. "North" instead of D0.'
Sandi says 'Classes in the pfiles.'
Asylumius says 'While we're talking about area format and stuff..'nod
You nod.
Asylumius says 'BITS!'grin
You grin evilly.
Quixadhal says 'I tossed a big fat example on the boards…. just an idea.'
Davion says 'Bits are very tricky'
Asylumius says 'Especially without C++''we have lots of options for bits
You say 'we have lots of options for bits'
Davion says 'As I mentioned earlier, because of the way object values are handled, it makes it pretty difficult to make seamless integration.''we cna stick with 32, but I don't think aqnybody wants that
You say 'we cna stick with 32, but I don't think aqnybody wants that'
Asylumius says 'We want infinite.. and we want to work with stock ROMs areas/stuff'
Quixadhal says 'yep, as much as I don't like bits, using one of the snippets that allows infinite is probably good.''we can get 64 just by using long longs
You say 'we can get 64 just by using long longs''and anybody used any of the infinite bit systems? That's ideal, if it works
You say 'and anybody used any of the infinite bit systems? That's ideal, if it works'
Asylumius says 'I cheated. I just used arrays of 32.'
Davion says 'I use Runter's a lot.',stoile Smaug's xbits system
Nibios stoile Smaug's xbits system'stole, even
You say 'stole, even'
Davion says 'I dunno about that system. It does some pretty funky stuff with memory'
Asylumius says 'We need to decide which way is going to co-exist with ROM the best''true. We want to be able to load any area file that loaqds into stock rom
You say 'true. We want to be able to load any area file that loaqds into stock rom'
Davion says 'If we put in an infinite bit code, object values need to be reworked'
Quixadhal says 'that's just work in the import routine.'nod
You nod.'more of an issue for exporting, really
You say 'more of an issue for exporting, really'
Asylumius says 'we need code to load regular bit fields and possibly some mapping''I know Sandi wants export, but I won't lose any sleep if we can't do it
You say 'I know Sandi wants export, but I won't lose any sleep if we can't do it'
Asylumius says 'but the whole using bits for object values, player flags, etc. gets tricky'
Quixadhal says 'so the loader code gets tweaked, no biggie. I wrote a converter from DikuMUD to Forgotton Realms LpMUD.. it's not that hard.''I'ved imported envy areas into rom
You say 'I'ved imported envy areas into rom'
Davion says 'I've imported Smaug and ROT into ROM'
Davion says 'Importing stuff is easy''yep, I think that's what we're all saying
You say 'yep, I think that's what we're all saying'
Grumny disappears into the void.
Davion gasps in astonishment.
Asylumius says 'I'm less concerned with import/export as much as I am the fact that ROM uses plain old bits for *everything*'
Davion says 'Ya know'
Quixadhal says 'Yeah, all the places in the code that do if(foo & BIT_BORK|BIT_FOO) need to become if(is_set(foo, bork) || is_set(foo, foo))''true
You say 'true'
Davion cringes in terror!
Quixadhal says 'painful, but it's the "Right Thing to DO".''it's not that big a deal; I've been through it already
You say 'it's not that big a deal; I've been through it already'
Davion nods.
Quixadhal says 'grep said the frog'
Quixadhal says 'sed is your friend'nod
You nod.
Quixadhal says 'Is Runter's code stable?'
Asylumius says 'but again, what system?'
Davion says 'Oh ya'
Davion says 'Very simple too''there really aren't a whole lot of places like that in rom. Sure, plenty in any mud that's had a bit of modificationQuixadhal says 'I'd go for that then, it looked like a clean API.'
You say 'there really aren't a whole lot of places like that in rom. Sure, plenty in any mud that's had a bit of modification''where can we get a copy of Runter's system?
You say 'where can we get a copy of Runter's system?'
Asylumius says 'MB? I think Kyndig had it.'
Quixadhal says 'I think it's bitmasks 2.1 on mudbytes.'
Davion says 'And because they're still true bits, you can fake it if you need to use int values'
Davion says 'http://www.mudbytes.net/index.php?a=file...'
Quixadhal says 'yep, even though we won't… cause that would be naughty.'
Davion says 'You would with object values…'Quixadhal says 'I noticed it had serialization too.',runs off to grab a copy of it
Nibios runs off to grab a copy of it
Quixadhal says 'well, not in the file formats… necessarily.'
Quixadhal says 'you don't need to use ints at that level, but yeah… for on the fly changes in memory.''well, we're going to use names for flags anyway, right?
You say 'well, we're going to use names for flags anyway, right?'
Quixadhal says 'IE: I cast poison on the loaf of bread you're holding'
The sun slowly disappears in the west.'which means we can actually change our internal bit system without messing up any area files
You say 'which means we can actually change our internal bit system without messing up any area files'
Quixadhal says 'yeah, no reason not to in the files.'
Asylumius says 'sorta. but we still need the current stuff to load the old areas'
The night has begun.
Asylumius says 'the "original" format would still load the bits the old fashioned way'
Quixadhal says 'that's just importing though. we don't need to keep the bits in the same order or anything.'
Asylumius says 'right'
Quixadhal says 'it just gets translated as it's read in.'
Asylumius says 'did we decide we were leaving memory alone?'
Asylumius says 'recycle lists and all'
Davion says 'I think we'd have to leave the internal string handler a lone, but recycling and stuff just needs to go''i can live with free lists, but if everybody wants to junk them, that's okay too
You say 'i can live with free lists, but if everybody wants to junk them, that's okay too'
Davion says 'Needlessly increases the footprint''meh, not really
You say 'meh, not really'
Asylumius says 'and for bits.. Runters code.'
Quixadhal says 'I'm all for simplifying… calloc/free doesn't take any CPU to run these days'
Quixadhal says 'I'd rather free the mallocs and allocate them again, than manage a recycle list.'
Davion says 'If we're going to use c++ we'd have to use new/delete for any structure that contains a STL member'
Asylumius says 'I thought we were gonna compile with g++, but avoid the STL'
Davion prays for transportation!
Davion said if ;)
Quixadhal says 'yes, that could be another bridge though.''actualy I thought we were going to compile with gcc, but maintain the apability of compiling with g++
You say 'actualy I thought we were going to compile with gcc, but maintain the apability of compiling with g++'
Quixadhal says 'we can clean up the current memory system before we really think about using stl and friends.'
Asylumius nods at Quixadhal.
Davion nods.
Asylumius says 'Color.'
Quixadhal says 'I'd say let's compile with g++, but just not use C++ specific features.'
Asylumius nods.
Davion nods at Quixadhal.
Quixadhal says 'That way, nobody adds the words "class" or "type" or "bool" behind our backs.'
Davion says 'It does enforce stricter guide lines''I thought you were concerned with footprint :P
You say 'I thought you were concerned with footprint :P'
Asylumius says 'It needs a color parser, but IMHO, all the fancy customization stuff is a feature of the game and probably outside the scope of improving the code'
Davion says 'Compiling with g++ doesn't increase the footprint unless you include c++ headers''it still mangles names, doesn't it?
You say 'it still mangles names, doesn't it?'
Asylumius says 'It should compile with g++, which means avoiding reserved keywords, but we aren't committed to using C++ yet.'
Asylumius says 'So ch->class will be changed right away''that's already changed in Quixadhal's code
You say 'that's already changed in Quixadhal's code''or Davion's, or whoever did the original G++ cleanup
You say 'or Davion's, or whoever did the original G++ cleanup'
Asylumius nods.
Quixadhal says '-rwxr-x— 1 quixadhal users 3100 Oct 5 19:55 hello; '-rwxr-x— 1 quixadhal users 3492 Oct 5 19:55 hello++; '-rw-r—– 1 quixadhal users 92 Oct 5 19:55 hello.c'
Quixadhal grumbles and growls. You wonder what's wrong…
Asylumius raises an eyebrow.
Quixadhal says 'I was pointing out that compiling the same code in g++ does add a little, but not much.'
Davion gasps in astonishment.
Quixadhal says 'I thought my ; would work… sorry.''something over 10% in that example
You say 'something over 10% in that example'
Quixadhal says 'Yep, but a good chunk of that is one-use-only, so it won't grow with the size of the code.'
Asylumius says 'Insignificant :P'
Quixadhal says 'so for a 500K executable, it's probably more like 2.'
Asylumius says 'Again, I'm glad we all used to have shitty computers.. but we don't anymore :)''ya kinow, this is the mentality that ends up with half gig operating systems
You say 'ya kinow, this is the mentality that ends up with half gig operating systems'
Grumny nods.
Grumny says 'I think we should pretend we still have shitty computers'
Grumny says 'let the end user make use of all the extra'
Quixadhal says 'actually, some of that is because of backward compatibility…. keeping emulation for the old 8088 DOS binaries, ya know?''I already offered to drag out my old 486 :P
You say 'I already offered to drag out my old 486 :P'
Asylumius says 'It's hardly enough of a difference to warrant avoiding g++''well the half gig operating system I'm thinking of tossed out support for most of those old 8088 binaries anyway
You say 'well the half gig operating system I'm thinking of tossed out support for most of those old 8088 binaries anyway'
Quixadhal says 'I can install slackware 3 on a virtual machine, if that helps… might be gcc 2.95.''hey I still have a cd with slack 2.2.0.1
You say 'hey I still have a cd with slack 2.2.0.1'
Quixadhal says 'I assume vmware will let me allocate only 16M of RAM… we're making a pimp box for the day.',might have an 0.99 kernel somewhere
Nibios might have an 0.99 kernel somewhere
Davion says 'My 386 doesn't work anymore :('
Asylumius says 'We want a leaner, faster ROM.. but we also want someone that is going to accomodate your average coder on your average machine (today)'
Grumny nods.'okay
You say 'okay'
Quixadhal says 'Yep, and getting rid of the tricks that were needed to run the game on a 486 with 8M will make things cleaner.'
Asylumius nods.
Asylumius says 'any BSD fans?'
Quixadhal says 'Not that *I* care, but using g++ might even make it possible for some people to compile with visual studio. *shudder*'
Darva has entered the game.
Quixadhal says 'I use OpenBSD on my firewall. :)''good grief, visual studio??
You say 'good grief, visual studio??'shud
You shudder at the horror and repress tears.
Quixadhal says 'Well, I did say "some people".'
Asylumius says 'To be honest, I could care less if it compiles under windows''actually, I'd been meaning to ask if we were gonna drop msdos and/or mac suppoort
You say 'actually, I'd been meaning to ask if we were gonna drop msdos and/or mac suppoort'
Davion says 'Especially with AndLinux around'
Davion says 'That thing simply rules.'agree a
You nod in enthusiastic agreement with Asylumius.
Asylumius says 'I'd drop 'em, ya'
Quixadhal nods.
Davion agrees absolutely.
Davion says 'Screw Gates.'
Asylumius says 'OSX is *nix now so..'
Darva says 'Not that the ms-dos support was ever that useful in the first place.'
Davion says 'It's a moto of mine.'
Quixadhal says 'msdos is silly, and most macs nowadays will be OS X''so we change game_loop_unix() to game_loop() and toss the other, sounds good to me
You say 'so we change game_loop_unix() to game_loop() and toss the other, sounds good to me'
Asylumius says 'plus remove all the various #IF YOUROSSUCKS and prototypes''yep
You say 'yep'
Quixadhal grins evilly.'speaking of which, clean all that crap outta the top of comm.c
You say 'speaking of which, clean all that crap outta the top of comm.c'
Quixadhal says 'and no Amiga support either…just in case.'
Darva says 'Don't drop the nocrypt stuff though, so as to make sure cygwin still works.''cant' get a libcrypt for cygwin?
You say 'cant' get a libcrypt for cygwin?'
Quixadhal says 'or just include our own routine for crypt.'
Darva says 'I don't beleive so. And that's what the nocrypt define does for cygwin.'
Quixadhal says 'as long as the passwords are only used by the MUD, it just has to not be crackable by a captain crunch toy.''we would have to roll our own though, can't use gnu's
You say 'we would have to roll our own though, can't use gnu's'
Asylumius says 'i dont care either way.'
Davion says 'I often enable nocrypt for my MUDs'
Davion says 'Simply for the fact that players are always "Wtf is my password?!"'
Asylumius says 'can we use md5?''I use crypt, but I don't go to the point of requiring ssl.
You say 'I use crypt, but I don't go to the point of requiring ssl.'
Sandi nods at Davion.
Darva says 'Ehh, if a player asks for their password, it's not hard to write a command that changes their password for them.''well, the problem with a gju implementation is it's gpl'ed, which doesn't work with the diku licenseDarva shrugs helplessly.
You say 'well, the problem with a gju implementation is it's gpl'ed, which doesn't work with the diku license'
Asylumius says 'I'm fine with crypt, honestly.'
Davion says 'Then when you tell them you can't, because it's encrypted, they talk down to you like you're an idiot.'
Davion says 'Whoa… Darva… when'd you get here?'
Davion scrolls up.
Quixadhal says 'in fact, adding a command to change the password in a player file from inside the game would be a good idea…. *wink*'
Pedlar dosent wana scroll up
Pedlar says 'someone tell me when I missed! :P'
Darva says 'About 5-10 seconds ago.''you mean like wizpass?
You say 'you mean like wizpass?'
Asylumius says 'I set their password to ""'
Asylumius says 'and they type "password anything mynewpass"'
Asylumius says 'or maybe its password mynewpass'
Darva nods at Asylumius.,knew an imp that would set a forgotten password to 'dumbass'
Nibios knew an imp that would set a forgotten password to 'dumbass'
Darva falls to the ground and rolls around laughing hysterically.
Quixadhal says 'we mostly decided on Runter's bit code, OLC, and g++ but no using C++ features yet.'
Asylumius says 'So.. leave crypt the way it is?'
Davion grins evilly.
Davion nods.'yeah, I think so
You say 'yeah, I think so'
Asylumius says 'On to color?''okay
You say 'okay'
Asylumius says 'ROM doesn't have a color code system by default'
Pedlar is still a strong supporter of new/delete'color for sure
You say 'color for sure'
Quixadhal says 'My MUD has no color, unless you sit at the green vt terminal.'
Pedlar says 'we can make one!''nerw/delete are c++ features. This is C
You say 'nerw/delete are c++ features. This is C'
Asylumius says 'Like I said before, I'm against a full brown color customization system.'
Darva raises an eyebrow at Asylumius's weird actions.
Asylumius says 'Too many people want color to work in different ways.'
Darva says 'You prefer to be stuck with the sorts of colors you get when people with astehtic taste as bad as mine select the color scheme?''you mean the systems where a player can set the color they see says in, and the color they see emotes in, and such?Asylumius says 'Some people dont even want customizable colors'
You say 'you mean the systems where a player can set the color they see says in, and the color they see emotes in, and such?'
Pedlar says 'Customization is good for player :D'
Quixadhal says 'I actually would prefer customizable color. But it's not essential in the start.'
Quixadhal says 'I would like to be able to have tags like &(damage) rather than &r.'
Sandi says 'Providing a parser for substitutions is a good thing, I think.'
Pedlar eve has a sick system to do so with custom colors'the only thing I have to say is can we please PLEASE use some character besides "{"
You say 'the only thing I have to say is can we please PLEASE use some character besides "'
Darva says '{?'
Pedlar says '{'
Quixadhal says '^?'''I use `
You say ''I use `'
Quixadhal says '%^ even?'
Pedlar says '{ is a good color code to use'
Asylumius says '[31m?'
Darva says 'seems to be the standard on rom, since so many people use lope's color.'
Asylumius smiles happily.
Darva says 'bah. {'
Quixadhal says 'most of the diku stuff I see uses &''smaug uses &
You say 'smaug uses &'
Pedlar says '{ is the standard for most roms'
Sandi uses `,does topo
Nibios does topo
Asylumius says 'I'd use because we're talking ROM.'
Asylumius says 'meh'
Asylumius says '{'
Darva falls down laughing.
Quixadhal says 'SO, would be red by default?'
Quixadhal says 'SO, {r would be red by default?'
Asylumius says 'yeah'
Pedlar says 'yes'
Grumny says 'be a good idea to check the major clients and make sure we use something they don't?'
Quixadhal says 'Could we just extend that to use {{damage}, for example?''that's why ` works so well
You say 'that's why ` works so well'
The night has begun.
Sandi says 'Using a curly messes up bracket matchers.'agree sandi
You nod in enthusiastic agreement with Sandi.agree sandi
You nod in enthusiastic agreement with Sandi.
Asylumius says 'I'm against customizing says, yells, tells, damage, prompts, etc. but I expect to lose this one'
Quixadhal says 'We want to keep it familiar though, if it's possible.'
Asylumius says 'Rainbows make me want to beat up children and take their toys'
Darva chuckles at Asylumius's joke.
Darva says 'Do you mean not letting players use color on global channels?'
Sandi says 'We don't have to add color, just provide it.''sandi, did your players have any trouble adapting?
You say 'sandi, did your players have any trouble adapting?'
Sandi says 'Nope.'
Pedlar says 'ya have a default setup, that the developer choose, and the player customizes for themselves'
Quixadhal says 'I'd like to be able to use specific color tags OR tags-by-purpose in descriptions. Filtering them in channels is fine by me.'
Asylumius says 'Some MUD admins dont want players using color codes. Some MUD admins dont want color to be customizable.''that's true too
You say 'that's true too'
Asylumius says 'It's a feature that too few people agree on to 'standardize' the way we want'
Quixadhal says 'Yep, filtering in channels is easily done by just adding the ability to filter.'
Quixadhal says 'that's seperate from the color code itself.''one person's nicely coordinated scheme is another person's garish and yet a third person's drab
You say 'one person's nicely coordinated scheme is another person's garish and yet a third person's drab'
Asylumius nods.
Pedlar says 'can always add compile time defines -DNOCUSTOM and -DNOCHANCOL'
Quixadhal says 'other than, I guess, having a color_strip() routine.'
Darva says 'I saw you folks saying you'd agreed on a new bit system, with an unlimited bit system, there's nothing stopping you from adding a player command that prevents them from seeing color on public channels.''a color_strip routine is very handy to have
You say 'a color_strip routine is very handy to have'
Darva says 'like autonocolor or somethin.'
Sandi says 'Again, we don't have to add color, just provide it. :)'
Quixadhal says 'nah, those can be runtime… just settings in a file to toggle them.''can't players turn color on and off even with lopes?
You say 'can't players turn color on and off even with lopes?'
Darva nods.
Pedlar nods.
Asylumius nods.
Pedlar says 'type color'
Quixadhal says 'Some of the rewrites I did back in AFK/Smaug's color code were to track things like color_strlen() and such.'
Asylumius says 'in one version, then can turn it on/off''so that part is not an issue
You say 'so that part is not an issue'
Sandi uses Lope's color for more than just color.
Asylumius says 'in another, they can customize it'
Pedlar says 'this one is the customizable one.'
Asylumius says 'I hate this one :P'
Asylumius says 'its.. tacky.. or something'
Darva says 'True, one mud i used to play on had a crash bug related to using color to push the length of a string past the length of the buffer holding it. Something that needs to be watched for.'
Asylumius says 'i dont like the way it looks or works'
Pedlar says 'i dun like the way this one works'nod dar
You nod at Darva.
Quixadhal says 'It also needs to know the actual printed length for things like centering text, or word wrap.'
Pedlar says 'or even looks''I've written routines that do that
You say 'I've written routines that do that'
Asylumius says 'we definitely need to keep string length straight.. allow for stripping the codes, etc.'
Asylumius says 'as for the color escape char.. either { or we figure it out later'
Asylumius says 'its not hard to change'
Asylumius says 'especially if we dont use it''my mud has strip_color(), is_colorcode(), strlen_wo_color, etc, etc. Not a big deal to do
You say 'my mud has strip_color(), is_colorcode(), strlen_wo_color, etc, etc. Not a big deal to do'
Asylumius says 'Davion is gonna love the next topic :P'
Quixadhal says 'So, I vote for { as the escape code, doubled to put a literal in, and {(tagname) to allow named colors.'
Pedlar says 'he loves every topic''I'm dead against using {{ for the color character
You say 'I'm dead against using { for the color character'
Quixadhal says 'which we may or may not use.'
Sandi says 'Me too. If we're going to improve anything…'
Quixadhal says 'I actually prefer &, but I'm trying to be ROM-minded here. :)'
Pedlar says 'i like Q's idea with the tagnames'
Pedlar says 'even if we make it {<tag> would be good''I found that & tends to show up in conversation just a bit too often
You say 'I found that & tends to show up in conversation just a bit too often'
Quixadhal says 'like I said earlier, if the area files have old ROM-style codes, it can easily be changed on import.'
Asylumius says 'I'd almost say dont even bother with color, but too many people will mess things up adding it''rom doesn't have color anyway :P
You say 'rom doesn't have color anyway :P'
Lightning flashes in the sky.
Pedlar says 'yea, stock rom dosent come with color'
ChrisBailey has entered the game.
Quixadhal says 'true, but enough ROMs have added color…'
ChrisBailey says 'Hello.'
Quixadhal waves goodbye to ChrisBailey.'so there's not a problem with area file compatibility in that respect
You say 'so there's not a problem with area file compatibility in that respect'
Asylumius says 'Stock ROM doesnt have color.. and the ones that do use {'
Pedlar says 'so, how bout, we don't add color, from the start, were not making any codmtic changes here.'
Asylumius says 'For that reason, I'd say we either use the lopes escape char or dont include color'sigh
You sigh.
Quixadhal says 'I don't consider color code to be cosmetic though, it's a tool for builders.'
Pedlar says 'like Asyl wants, and later if we need to, we add, it, or we offer it to admins when we we distribute RaM with a snippet for coloring'
ChrisBailey says 'Color seems to be a standard feature in modern codebases.''and seriously, how many muds don't have color? I think we can assume that 95% of the potential users of this thing are going to want color
You say 'and seriously, how many muds don't have color? I think we can assume that 95% of the potential users of this thing are going to want color'
Darva nods.
ChrisBailey nods at you in agreement.
Sandi says 'That and OLC were the two most asked for things on the ROM mail list.'nod san
You nod at Sandi.
Quixadhal says 'yep, it's an expected tool… I can tell you OLC and Color were alwasy the most asked about features in WileyMUD.'
Asylumius says 'Put it this way'
Quixadhal says '(we had neither).'
Asylumius says 'Our scope does not extend to player features'
Asylumius says 'It only extends to developer (coder) and area builders.'
Asylumius says 'Which means a parser qualifies as a building tool.'
Pedlar nods at Asylumius.
Quixadhal says 'Area builders…. that's my point.'
Asylumius says 'However, full blown color customization does not.''okay, so are we agreed on basic color?
You say 'okay, so are we agreed on basic color?'
Asylumius says 'And we're back to the fact that most ROM MUDs and ROM areas use {'
Quixadhal says 'As a builder, I want tags for color, I don't care if the players can change what color they show up as.'
ChrisBailey says 'I've never been a fan of myself.'
Asylumius says 'I get annoyed when builders use color :P'
ChrisBailey says '{'
Quixadhal says 'I can live with { if that's the pseudo-standard'
Asylumius says 'its the pseudo-rom-standard'
ChrisBailey nods.
Asylumius says 'but we dont all agree its the best'
Darva says 'if the biggiest complaint is whether it should be { or not. just make it configurable. :P'
Quixadhal says 'In code, we could even make it a token that you can set in a config file!'
Pedlar says 'where di Dav go?'
Darva says 'and leave { as the default.'
Davion says 'Trying to cook, sorry!'
Quixadhal cheers and sings… he is just BURSTING with joy!
Pedlar says 'there he is'
Pedlar hugs Davion.
Asylumius says 'Again.. if we dont actually *use* the color for any output'
Asylumius says 'we can change the escape code at any time'
Darva nods at Asylumius.
Pedlar says 'color shouldnt be used for area descriptions and room descriptiong realy anyways'
Asylumius says 'and since we're not writing a ton of game specific code.. we shouldnt need to use color for things like send_to_char/sprintf/etc'
Pedlar says 'its uggy :P'
Asylumius nods at Pedlar.
Quixadhal says 'So, allow color codes of the form {r and such, and perhaps extend them to allow {<damage> type tags?'
ChrisBailey says 'That's a personal opinion though Pedlar.'
Pedlar says 'A description should be nice and easy to read, not color filled.'
Pedlar says 'i can ggree with Asyl on that view :D'
ChrisBailey says 'Color can make descriptions easier to read for some.''let us NOT use a character that hoses brace matching.
You say 'let us NOT use a character that hoses brace matching.'
Asylumius says 'brace matching in what?''brace matching in editors
You say 'brace matching in editors'
Quixadhal says 'You want to pick the red apple, not the green one.'
ChrisBailey says 'I missed this whole discussion though, so I'll wait until the next subject gets brought up.'
ChrisBailey nods at Quixadhal.
Asylumius says 'Nib: are you referring to coding? or area writing in an editor?'
Quixadhal says 'and obviously, {R is not reset. *grin*''you know, you put the cursor on a ( and hit a key and it jumps to the matching )
You say 'you know, you put the cursor on a ( and hit a key and it jumps to the matching )'
Asylumius says 'any decent editor should understand that {r inside a string literal isnt supposed to be matched''I'm referring to coding
You say 'I'm referring to coding'
Asylumius says 'I've never seen an editor try to match send_to_char("asdasd rasdasdasd");'
Asylumius says 'er'
Asylumius says 'you know'
Sandi grins evilly.
Quixadhal says 'chprintf("%s says 'You are blood)ebil!");" would be ugly.'
Quixadhal says 'chprintf("%s says 'You are {(blood)ebil!");" would be ugly.'
Quixadhal says 'for example.'
Asylumius says 'sprintf(buf,"$n %ss '%s$t%s'",saymsg,get_char_color(victim,"speech"),END_COLOR(victim))'
Asylumius says 'We do that :P'
ChrisBailey drinks water from a carved marble fountain.
Asylumius says 'cuz we're weird'
ChrisBailey drinks water from a carved marble fountain.
Davion cringes in terror!
Quixadhal says 'I also highly suggest making varargs functions like chprintf() roomprintf() etc to do away with all the tmp buffers!'
Pedlar says 'thats actually not too weird looking Asyl :P'
Asylumius nods at Quixadhal.'definitely
You say 'definitely'
Asylumius says 'The reason I like our method is because its in the code'
Darva nods at Quixadhal.
Asylumius says 'and it doesnt rely on tokens'
Davion says 'We used to use something like {[speech]'
Quixadhal says 'there are sooo many cases of sprintf where the only thing you do with it is send_to_char.'
Asylumius says 'which arent mud-independent''and call them chprintf or ch_printf, not a monstosity like printf_to_char
You say 'and call them chprintf or ch_printf, not a monstosity like printf_to_char'
Asylumius says 'so um..''I've found log_printf, bug_printf and buf_printf to be quite useful
You say 'I've found log_printf, bug_printf and buf_printf to be quite useful'
Asylumius says 'the color escape code is a config then?'
Pedlar says 'Asyl you logging all this right?'
Asylumius nods.
Quixadhal says 'I like ch_printf and similar.'
Pedlar says 'ok''well the only hting with making t a config thing is, we can't do any color at all in the code. Maybe that's a good thng, maybe that's a bad thing; I dunno
You say 'well the only hting with making t a config thing is, we can't do any color at all in the code. Maybe that's a good thng, maybe that's a bad thing; I dunno'
Pedlar says 'wanted to make sure this was all well documented'
Quixadhal says 'So, config defaulting to {…'
Quixadhal says 'Sure you can, but you have to use the token.'
Davion says 'Runter seems interested. Mighta just recruiter another'scream
ARRRRRRRRRRGH!!!!!
Asylumius says 'For now, at least?'
Asylumius says 'Save some energy for progs. You're gonna need it :P'
Quixadhal says 'ch_printf(ch, "color ", color_prefix, "r");''I am still against using {{
You say 'I am still against using {'
Quixadhal says 'ch_printf(ch, "color %s%stext", color_prefix, "r");'
Retnur has entered the game.
Sandi says 'I'm against { as well.'
Quixadhal says 'and yes, % is being grabbed by tinyfugue. :)'
Retnur says 'Roar'
ChrisBailey nods at Sandi.
Pedlar says 'ha Retnur'
Retnur says 'Hello'
Asylumius says 'If its a config option, I dont care if we prefix the color with ^ or & or `'
Quixadhal says 'Ok… vote then… { or &… they're all evil and will break SOMETHING. :)''what about `? Sandi and I have both mentioned it several times
You say 'what about `? Sandi and I have both mentioned it several times'
Sandi nods at you in agreement

Edit: readability - kiasyn
12 Oct, 2008, Avaeryn wrote in the 9th comment:
Votes: 0
Avaeryn said:
The RaM Development team will be having another meeting to discuss the project this Sunday at 7 pm EST.
Meetings will be held on a weekly basis at this time so changes, prospective changes, and the like can be discussed.

Everyone join us!

sulinea.arthrmoor.com port 5489


Thanks to Retnur for pointing this out, it's sulinea.arthmoor.com 5489
Blasted typos!
13 Oct, 2008, quixadhal wrote in the 10th comment:
Votes: 0
Heh, light meeting this week. One of us will post a full log when it's not 3AM, but the short summary is:

We're still in bug fixing mode, and still in cleanup mode at that. The plan is to finish cleaning and refactoring the code first, then digging into the list O' stock ROM bugs, then move onward to adding tools and enhancements.

We hate str_dup and the recycle system. For now, it stays in, and we've got it patched for 64-bit (thanks Davion!), but it will be worth really looking into how much memory is saved at the expense of added code maintenance/complexity AND added CPU cycles spent in trying to save the memory. Rough estimates are that it only saves 200K of RAM with the stock area files, and that's peanuts for all the effort.

We're (eventually) going to use Runter's bit code, and I have a crazy idea that I'm going to invest a bit of time in that would allow us to have runtime configurable bits and not have to worry about tracking 12 different sets of bit definitions (in fact, none at all). More on that later.

The SVN repository is up and working! You can grab the latest code from sulinea.arth...
13 Oct, 2008, David Haley wrote in the 11th comment:
Votes: 0
quixadhal said:
We hate str_dup and the recycle system. For now, it stays in, and we've got it patched for 64-bit (thanks Davion!), but it will be worth really looking into how much memory is saved at the expense of added code maintenance/complexity AND added CPU cycles spent in trying to save the memory. Rough estimates are that it only saves 200K of RAM with the stock area files, and that's peanuts for all the effort.

The savings don't show up until you have several instances of the same thing. If you have, say, 2,000 object prototypes, but 10,000 object instances, that's 8,000 objects that are duplicates of something else.

Of course, the way shared strings are implemented in Dikuvatives is abysmal, and it's a whole lot easier to do otherwise, e.g. with a self-managing shared string class. There are several implementations out there, including incidentally one on my site that I've been using in my code. This naturally assumes willingness to use C++, which IMHO only has upsides.
13 Oct, 2008, MacGregor wrote in the 12th comment:
Votes: 0
quixadhal said:
We hate str_dup and the recycle system. For now, it stays in, and we've got it patched for 64-bit (thanks Davion!), but it will be worth really looking into how much memory is saved at the expense of added code maintenance/complexity AND added CPU cycles spent in trying to save the memory. Rough estimates are that it only saves 200K of RAM with the stock area files, and that's peanuts for all the effort.

Heh heh, who's "we"?

Anyhow, here's some numbers on the way ROM shares string space.
First off, I changed these lines in str_dup:
if ( str >= string_space && str < top_string )
return (char *) str;

to this:
if ( str >= string_space && str < top_string )
{
dup_count++;
dup_len += strlen( str );
return (char *) str;
}

and in free_string, from this
if ( pstr == NULL
|| pstr == &str_empty[0]
|| ( pstr >= string_space && pstr < top_string ) )
return;

to this:
if ( pstr == NULL
|| pstr == &str_empty[0] )
return;
if ( pstr >= string_space && pstr < top_string )
{
dup_count–;
dup_len -= strlen( pstr );
return;
}

There's more coding, obviously, but that's the general idea of it. In particular I have pretty much the same thing in fread_string().

The result is that, in stock ROM, 805,153 bytes are in duplicated strings. This is out of 1,314,667 total bytes. To put it another way, memory usage for this stuff would be 61% higher without this mechanism.

Just for kicks I added the same code to my own mud, a Rom deriv, which has significantly more areas than stock ROM. On my mud, I have 6,751,221 bytes in shared string space and I'm saving 3,079,011 bytes.
13 Oct, 2008, Runter wrote in the 13th comment:
Votes: 0
DavidHaley said:
quixadhal said:
We hate str_dup and the recycle system. For now, it stays in, and we've got it patched for 64-bit (thanks Davion!), but it will be worth really looking into how much memory is saved at the expense of added code maintenance/complexity AND added CPU cycles spent in trying to save the memory. Rough estimates are that it only saves 200K of RAM with the stock area files, and that's peanuts for all the effort.

The savings don't show up until you have several instances of the same thing. If you have, say, 2,000 object prototypes, but 10,000 object instances, that's 8,000 objects that are duplicates of something else.

Of course, the way shared strings are implemented in Dikuvatives is abysmal, and it's a whole lot easier to do otherwise, e.g. with a self-managing shared string class. There are several implementations out there, including incidentally one on my site that I've been using in my code. This naturally assumes willingness to use C++, which IMHO only has upsides.


That's not really true. Objs are built from prototypes of obj_index_data in rom. Then there's mob_index_data, room_index_data. That's already implemented regardless of anything else. That means even without the string management system that rom puts into place, it's quite easy to refer to the strings if no string is set of the parent prototype.
13 Oct, 2008, David Haley wrote in the 14th comment:
Votes: 0
Runter said:
That's not really true. Objs are instances of obj_index_data in rom. Then there's mob_index_data, room_index_data. That's already implemented regardless of anything else. That means even without the string management system that rom puts into place, it's quite easy to refer to the strings if no string is set of the parent prototype.

Do you mean that it shares the literal pointer, or that it duplicates the string? In the first case, how do you know when to free the string – only when you destroy the prototype? What if you need to modify the string? Then how do you know when you destroy the object that you need to free the string? In the second case, is that not precisely where shared strings are helpful?
13 Oct, 2008, Runter wrote in the 15th comment:
Votes: 0
DavidHaley said:
Runter said:
That's not really true. Objs are instances of obj_index_data in rom. Then there's mob_index_data, room_index_data. That's already implemented regardless of anything else. That means even without the string management system that rom puts into place, it's quite easy to refer to the strings if no string is set of the parent prototype.

Do you mean that it shares the literal pointer, or that it duplicates the string? In the first case, how do you know when to free the string – only when you destroy the prototype? What if you need to modify the string? Then how do you know when you destroy the object that you need to free the string? In the second case, is that not precisely where shared strings are helpful?


No, it's not. It's a separate issue from shared string space. Even with shared string space, when you create objects – (Go look at the code) – It doesn't even invoke the shared string system. So thew ay it operates now with objects built from prototypes has little to do with it. The shared string space is mostly for prototypes that share the same string space with fread_string doing the only loading into that shared space.
13 Oct, 2008, David Haley wrote in the 16th comment:
Votes: 0
Err, yes, actually, creating many copies of the same thing is exactly where shared strings are supposed to be used. I'm not talking about where ROM actually uses them, but where you are supposed to use them. If ROM is actually duplicating strings for the instances, I would argue that that is pretty wasteful/dumb, especially if there is already a shared string infrastructure. Sharing strings across prototypes is a little silly, because presumably you don't create many prototypes with the same text…
13 Oct, 2008, Runter wrote in the 17th comment:
Votes: 0
DavidHaley said:
Runter said:
That's not really true. Objs are instances of obj_index_data in rom. Then there's mob_index_data, room_index_data. That's already implemented regardless of anything else. That means even without the string management system that rom puts into place, it's quite easy to refer to the strings if no string is set of the parent prototype.

Do you mean that it shares the literal pointer, or that it duplicates the string? In the first case, how do you know when to free the string – only when you destroy the prototype? What if you need to modify the string? Then how do you know when you destroy the object that you need to free the string? In the second case, is that not precisely where shared strings are helpful?


From create_obj()
obj->name           = pObjIndex->name;
obj->short_descr = pObjIndex->short_descr;
obj->description = pObjIndex->description;


The way we determine if the pointer is pointing to the index or not is the issue. Not if it's part of the shared string system (which is only actually sharing it for index clones, not real objects)
13 Oct, 2008, Runter wrote in the 18th comment:
Votes: 0
DavidHaley said:
Err, yes, actually, creating many copies of the same thing is exactly where shared strings are supposed to be used. I'm not talking about where ROM actually uses them, but where you are supposed to use them. If ROM is actually duplicating strings for the instances, I would argue that that is pretty wasteful/dumb, especially if there is already a shared string infrastructure. Sharing strings across prototypes is a little silly, because presumably you don't create many prototypes with the same text…


The shared string system has nothing to do with "is the pointer pointing to memory that need to be freed?"

The shared string system is maintaining huge hash tables for *only* index systems. Removing the shared string system has nothign to do with managing pointers to memory that may or may not be pointing back to your index. Right now it's certainly not managed inside of the shared string system. Proof: A restrung item's descripts doesn't share string memory even if it's the same exact string x 100000.
13 Oct, 2008, David Haley wrote in the 19th comment:
Votes: 0
In this case, how do you change the strings associated with an object instance? Is that something that you simply can't do in ROM?
13 Oct, 2008, David Haley wrote in the 20th comment:
Votes: 0
I think there is some confusion here…

I am arguing that not sharing strings across instances is wasteful. By sharing pointers with the prototype, strings are being shared. So that's good. But in that case, I wonder how you know when to free a string associated with an object, because you don't know if it belongs to the object or to its prototype.


EDIT: also, I should point out that "shared string" != "shared string system that ROM uses".
0.0/62