17 Nov, 2008, Avaeryn wrote in the 1st comment:
Votes: 0
Short meeting. Enjoy. My last log for a bit as well. Internet dies tomorrow.

Quixadhal: 'I finally got around to reading the notes on that board… about a month late. :)'
Avaeryn: 'which board btw?'
Quixadhal: 'the one in this room….'
Quixadhal waves over that-a-way.
Avaeryn: 'oh ok :P'
Quixadhal: 'You know, the one it pesters you about when you log in.'
Avaeryn: 'i thought from just looking at the one on mb you were fairly well caught up'
Quixadhal grins evilly.
Quixadhal: 'Not having a ROM background, it took me a minute to figure out "note read"… my game just has "read" hard-coded into a special parser for rooms with boards.'
Asylumius: 'What's this playerlist thing all about?'
Quixadhal: 'doing "read" here just does a look'
Avaeryn: 'what pllayer list?'
Avaeryn: 'that should be easy to change, or should b eanyway'
Quixadhal: 'Oh, that was an idea offshoot from the auto-whizz feature.'
Quixadhal: 'ROM had a couple unimplemented hooks for a way to auto-generate an immortal'
Quixadhal: 'so I figured that was a handy feature to avoid making people edit player files to get one, or shipping a default admin guy'
Quixadhal: 'If you enable it in the makefile, it keeps track of every player made'
Quixadhal: 'which would let you do things like show the last time your friend was online'
Quixadhal: 'it also would thus know if you're the very first player ever made, and make you the IMP'
Quixadhal: 'but…. it can be a memory hog if you have thousands of player files… so I also made a -g flag to just make the first login into the IMP without the list.'
Quixadhal: 'I'll give people a couple more minutes and then do my schpeal'
Quixadhal: 'If nobody else shows up, or wakes up, it might be a short log this week.'
Avaeryn: 'that would be awesome :P'
Quixadhal throws back his head and cackles with insane glee!
Avaeryn: 'and with it being 7:30 EST, i doubt anyone is going tos how up'
Avaeryn: 'so, go ahead quix. dazzle everyone with what you've been up to'
Quixadhal: 'and yet, across the gulf of space, minds immeasurably superior to ours regarded this Earth with envious eyes… and slowly and surely, they drew their plans against us…'
Quixadhal: 'bonus points to anyone who knows what I'm listening to. :)'
Quixadhal: 'No guesses? Well, you have until I'm done with my changelog to figure it out!'
Avaeryn: 'nope, no guesses'
Quixadhal: 'Ok, so the stuff I've monkeyed with since we last gathered…'
Quixadhal: 'I removed a couple of hard-coded HACKS, such as the one that set the LAW flag on a whole vnum range for Midgaard.'
Quixadhal: 'If you want a whole zone to be LAW, go set the LAW bit in every room in the data files… don't muck around in the source code. :)'
Avaeryn: 'adding an area flag would do the same, wouldn't it?'
Quixadhal: 'There are some others too, but some are entwined in such a way that they aren't easily fixed.'
Quixadhal: 'If the area flags support it, sure. I haven't looked to see if they do or not.'
Quixadhal: 'That brings up a point we touched on earlier though.'
Quixadhal: 'If you were to implement area-wide flags, such as DARK or UNDERGROUND, or INSIDE… would they supercede the room flags, or would the room flags reverse the effect?'
Avaeryn: 'i would think the room flag would have supremacy '
Quixadhal: 'If I made a zone for a large factory complex, I'd probaby want 95% of them to be INSIDE, but a few streets might want to be outdoors.'
Avaeryn: 'another reason for staying with the premise that setting individual room flags would be better than having area flags'
Quixadhal: 'I could make it so that if the zone is set INSIDE, having a room set INSIDE would reverse it (the OLC and docs would have to be very clear on this)…'
Quixadhal: 'otherwise, you'd need a whole set of inverse flags, or yes… just set every room.'
Avaeryn: 'it makes more sense to me, as a builder, to set each individual room'
Avaeryn: 'it's not that difficult, doesn't take that much more time.'
Avaeryn: 'an alias or macro does the trick quite well'
Quixadhal: 'I'm a pretty slow and careful builder, so it doesn't matter much to me. I know some people rip out areas pretty quick though.'
Quixadhal nods.
Quixadhal: 'I tend to think if OLC is used, doing the inverse thing coudl be done transparently… but if anyone hand-edited the files it would be very confusing.'
Quixadhal: 'confusing is !good.'
Quixadhal: 'Anyways, another hard-coded bit I made into a define is the magic room 3001.'
Quixadhal: 'Several places in the code assume that room is somehow special, and use it as the default home room.'
Avaeryn: 'that's the recall room by default, i think'
Quixadhal: 'Ideally, that kind of thing should be read in from a data file at boot time, but for now it's a define in merc.h'
Quixadhal: 'One thing Runter has said, that I totally agree with, is that the game SHOULD be able to boot and run with no area files at all.'
Avaeryn: 'i agree with that too.'
Quixadhal: 'It will be very boring, with everyone huddled in the void, but it shouldn't crash. :)'
Avaeryn: 'however, would it be possible for the game to create a room for characters to log into if no areas exist? or would that even be a problem'
Avaeryn: 'or would limbo.are be left in?'
Quixadhal: 'I would simply hard-code room vnum 0 as The Void, and thus it would always be available.'
Quixadhal: 'If the area file overrides it with another definition, that's fine too.'
Avaeryn: 'hello sasuke'
Sasuke: 'hiya'
Quixadhal: 'Hi there sasuke!'
Sasuke: 'just curious as to how the development is going'
Avaeryn: 'ask him :P'
Quixadhal ducks defensively.
Sasuke chuckles politely.
Quixadhal: 'well, I was just going over a couple hard-coded things I ditched'
Quixadhal: 'I'm also happy to say that gsn's are no more.'
Sasuke nods.
Quixadhal: 'Of course, all the skills are still there, they just aren't tied to silly external variables now.'
Quixadhal: 'and in the process of cleaning that up, skill_lookup() is now a binary search, rather than linear.'
Quixadhal: 'so the 138 default skills/spells now take at most 8 steps to find, instead of 138.'
Quixadhal: 'brb :)'
Quixadhal: 'back'
Quixadhal: 'Let's seee.. what else….'
Quixadhal: 'Oh, I ripped out the quasi-functional code for the gods/ subdirectory and made it useful. :)'
Quixadhal: 'In particular, players and immortals both now save into subdirectories by their first letter… so I'd be players/q/Quixadhal'
Quixadhal: 'and immortals save into gods/q/Quixadhal, for the same example.'
Avaeryn: 'i remember you had mentioned that before'
Sasuke: 'why not have them saved in the same directory?'
Quixadhal: 'one neat side-effects of this… if you remove someone's god entry and they then log in, they still exist, but as a mortal.'
Quixadhal: 'because this way, the code enforces that anything loaded from the player side cannot be higher than LEVEL_HERO. :)'
Quixadhal: 'obviously, if they have shell access and know how things work, they can just edit gods/f/foo, but if you wanted to give your admins limited access to just the player subdir, you could do so.'
Quixadhal: 'via an ftp server or web server, most likely.'
Sasuke: 'that makes sense'
Quixadhal: 'it looks in gods/ first, and then in players/ if no match exists… so once someone becomes immortal, their player file should remain untouched. if you yank their god file, they'd end up right back where they were before.'
Quixadhal: 'The last bit I did this week, was the player list/auto-whizz code.'
Quixadhal: 'To recap what I said before the meeting started. :)'
Quixadhal: 'By default, the driver ships with this code disabled, so there is a "-g" flag you can give the driver'
Quixadhal: 'If you do that, the next character that logs in will become the IMPLEMENTOR.'
Quixadhal: 'that way we don't have to ship a cheesy default admin character, and the admin dosn't have to go edit their save file.'
Quixadhal: 'If you DO enable that code, it will create a file called players.txt that tracks each and every character created (along with a few basic stats).'
Quixadhal: 'The first one who logs in when the file doesn't yet exist will become IMP, as if the god flag had been used.'
Quixadhal: 'It's mainly there for the future. If you wanted to make a command to , for example, see when your friends had last logged in,'
Quixadhal: 'or display a who list of everyone, logged in or not.'
Quixadhal: 'I left it disabled by default though, as a busy mud with thousands of players might use up more extra memory than the idea is worth. :)'
Quixadhal: 'Other than that, I spent a little time poking at SVN to try and figure out branch merging.'
Quixadhal: 'I think I know how to do it properly now, but the svn server and I have a few "issues" when I try to do complicated things. :)'
Quixadhal: 'in any case, I believe it's time to add color, bits, and perhaps OLC this week.'
Quixadhal: 'OLC will, of course, be a bigger chunk, since it also entwines with mprogs and all that happy jazz.'
Quixadhal: 'I figured bits are probably next, then color which may also refactor the channel code'
Quixadhal: 'Ideally, I'd like to create channels for all player output, so it would be easier to tag everything if we added MXP or something similar.'
Sasuke disappears into the void.
Quixadhal: 'so you'd have a "say" channel, a "tell" channel, a "combat" channel, which you can't unsubscribe from, and which default to no prefixes.'
Sasuke has returned from the void.
Quixadhal: 'but if a future MXP set existed, it could tag them for direction to the right output window. :)'
Quixadhal: 'no falling asleep! They'll be a quiz at the end…. *grin*'
Sasuke: 'ugh, and Im horrible at tests too'
Sasuke runs away from Quixadhal in horror.
Quixadhal: 'I'm wondering if it would be possible to merge act so that ALL output can expand ALL codes.'
Quixadhal: 'Obviously, some act codes only work with the right arguments, so it might make empty tokens if used wrong.'
Quixadhal: 'but how often do builders want to put &n and friends into descriptions?'
Quixadhal smacks a ruler against the palm of his hand.
Quixadhal: 'Also… question for anyone still awake….'
Quixadhal: 'I'm thinking bits/color/OLC/mprog as the defining core extensions.'
Quixadhal: 'And once those are in place, that would be the point we switch on the C++ version.'
Quixadhal: 'Personally, I'd just do it now, but it might be nice to release one solid C version for anyone out there who hates C++?'
Quixadhal: 'OR…. we could just start the C++ conversion right now? I don't think I've heard anything from teh C-only folks in a few weeks.'
Sasuke: 'would it help the conversion any if you had the C version complete first?'
Quixadhal: 'Probably not, in fact some of the work would be duplicated.'
Quixadhal: 'OLC especially will have to use a lot of code dealing with bits and strings, both of which would be reworked in C++ to use the STL containers.'
Quixadhal: 'well, they wouldn't *HAVE* to be, but you know we'd want to.'
Asylumius: 'What's shakin?'
Quixadhal: 'Mah belly! *grin*'
Quixadhal: 'I'm trying to convince myself that I shouldn't start the C++ switch this week…. but not having much luck. :)'
Asylumius: 'gonna patch in OLC before switching to C++ or after?'
Quixadhal: 'That's the decision. It would be easier to be in C++ first, as much of the bit/string code would have to be redone again.'
Asylumius: 'Sounds logical.'
Quixadhal: 'The folks who wanted a C version haven't been heard from in a while, so I'm thinking it may not be worth the extra effort to do it twice.'
Asylumius: 'C++ it is, then?'
Quixadhal: 'Oh, time for another hint as to what I'm listening to:'
Quixadhal: 'The green flash in the sky. His demons were here all along - in our hearts'
Quixadhal: 'and souls - just waiting for a sign from him. And now they're destroying our world.'
Quixadhal: 'It's looking like C++ is the way to go, I hear no dissent.'
Sasuke has returned from the void.
Asylumius nods.
Quixadhal: 'Nobody is going to guess what I'm listening to… *grin*'
Sasuke: 'Doesn't it take all the fun away if no one guesses? :P'
Quixadhal chuckles politely.
Asylumius: 'Google says: Wayne Jeff - The Spirit Of Man lyrics'
Quixadhal: 'The first clue was harder to google for. :)'
Quixadhal: 'But yes, the 1970's disco version of The War of the Worlds.'
Quixadhal: 'and you thought the orignal was scary!'
Quixadhal: 'soooo, it sounds like Ice is being frozen and Fire is going to start?'
Asylumius: 'Going once.'
Quixadhal: 'Going twice.'
Asylumius: 'Sold to Quixadhal, for $0. Enjoy!'
Quixadhal chuckles politely.
Sasuke chuckles politely.
Quixadhal: 'So be it.'
Quixadhal: 'I'm going to bet it will take me a couple days to plan my attack, but std::string is probably numero uno.'
Quixadhal: 'Last chance to switch to Perl instead! *grin*'
Sasuke: 'My vote goes to ruby'
Sasuke: '…but C++ will do'
Quixadhal: 'ruby isn't ugly enough… Me wants me $%oo}'
Quixadhal: 'ruby isn't ugly enough… Me wants me $%{foo}'
Asylumius chuckles politely.
Quixadhal: 'ok, C++ it is.'
Quixadhal: 'My recent visit to a Chinese restaurant has given me the mantra for the new version.'
Quixadhal quotes 'Mistakes are the portals of discovery.'
Avaeryn: 'i'm back. meeting still going?'
Quixadhal: 'I think we've declared the C version on Ice and that plotting …. err.. planning stages of C++ is getting fired up. :)'
Sasuke: 'Quixadhal turned down my vote to go to ruby :P'
Quixadhal: 'I used the veto power of Perl's $_'
Avaeryn: 'that's cool'
Quixadhal: 'the nutshell is that adding OLC to the C version will just be work that gets redone in C++ anyways.'
Quixadhal: 'so if the C folk show up and cause trouble, they can backport the OLC system. :)'
Quixadhal grins evilly.
17 Nov, 2008, quixadhal wrote in the 2nd comment:
Votes: 0
Let me take a moment to say thank you to Avaeryn for all her help in getting the ball rolling here! She may think her contributions were small, but convincing even a few programmers to actually sit down and DO something is equivalent to herding cats, and that itself is hard work!

In revenge, I do plan to drag her back into the fire here in a month or two. There will be plenty for the non-programmer types to do once we get our base code established and working. :evil:

Until then, I'll just leave you with this: svn commit -m 'Ice is frozen, the Fire shall be lit soon!'
20 Nov, 2008, quixadhal wrote in the 3rd comment:
Votes: 0
Hehehehe, of course Soon(TM) doesn't mean all that soon. One of my hard drives went belly-up last night, so pretty much all day today was spent reinstalling Windoze and all the various things I find myself using all the time. A good chunk of tomorrow will also be spent on that task, as well as making a new ghost backup before I put any big huge games in place. :)

I'm not complaining overmuch though… I managed to keep an original OEM version of Windows XP running on this machine for 5 years. I know a couple of IT people who would claim that's impossible (and it was used for gaming too, so it wasn't overly sluggish!).

As such, I'm giving fair warning that this weekend's meeting will be mostly scheming, plotting, and planning what's getting worked on next, since…. it won't have been getting worked on much.

Cheers guys!
20 Nov, 2008, Avaeryn wrote in the 4th comment:
Votes: 0
quixadhal said:
Let me take a moment to say thank you to Avaeryn for all her help in getting the ball rolling here! She may think her contributions were small, but convincing even a few programmers to actually sit down and DO something is equivalent to herding cats, and that itself is hard work!

In revenge, I do plan to drag her back into the fire here in a month or two. There will be plenty for the non-programmer types to do once we get our base code established and working. :evil:

Until then, I'll just leave you with this: svn commit -m 'Ice is frozen, the Fire shall be lit soon!'


You just thought you had gotten rid of me :P I still have random access! Wait…doesn't that sound familiar? Hrmmm….could it be…random access mud? :devil:
20 Nov, 2008, David Haley wrote in the 5th comment:
Votes: 0
Grrrooooaaaannnn…. :lol:
0.0/5