April 2001
- Camelot Beta 3 Dave Rickey
- Camelot Beta 3 Daniel.Harman@barclayscapital.com
- Camelot Beta 3 Vincent Archer
- Camelot Beta 3 Derek Licciardi
- Camelot Beta 3 Darrin Hyrup
- Camelot Beta 3 Vincent Archer
- Camelot Beta 3 Dave Rickey
- Camelot Beta 3 Darrin Hyrup
- Camelot Beta 3 Auli
- Room Searching Jared
- Room Searching shren
- Room Searching Travis Casey
- Room Searching Eli Stevens
- Room Searching Derek Licciardi
- Room Searching Adam Martin
- Room Searching Hans-Henrik Staerfeldt
- Room Searching Daniel.Harman@barclayscapital.com
- Room Searching David Bennett
- Sims Online -- WAS: MUD-Dev digest, Vol 1 #301 - 15 msgs Zak Jarvis
- Mera '01 report Cassandra
- Mera '01 report Jake Song
- Mera '01 report J C Lawrence
- Mera '01 report Jake Song
- Mera '01 report J C Lawrence
- Mera '01 report Cassandra
- Learning about MUDs (was: MUD-Dev digest, Vol 1 #301 - 15 msgs) Brian 'Psychochild' Green
- Learning about MUDs (was: MUD-Dev digest, V ol 1 #301 - 15 msgs) McQuaid, Brad
- Learning about MUDs (was: MUD-Dev digest, Vol 1 #301 - 15 msgs) Derek Licciardi
- Learning about MUDs (was: MUD-Dev digest, Vol 1 #301 - 15 msgs) Brian 'Psychochild' Green
- Learning about MUDs (was: MUD-Dev digest, V ol 1 #301 - 15 msgs) Daniel.Harman@barclayscapital.com
- Learning about MUDs (was: MUD-Dev digest, Vol 1 #301 - 15 msgs) Jim S
- Learning about MUDs (was: MUD-Dev digest, V ol 1 #301 - 15 msgs) Freeman, Jeff
- Learning about MUDs (was: MUD-Dev digest, V ol 1 #301 - 15 msgs) Daniel.Harman@barclayscapital.com
- Learning about MUDs (was: MUD-Dev digest, V ol 1 #301 - 15 msgs) Vincent Archer
- www.innbetweenworlds.com Klimon, Ian
- MERA '01 followup: Success critera Zak Jarvis
- MUD-Dev digest, Vol 1 #303 - 17 msgs Dr. Cat
- MUD-Dev digest, Vol 1 #303 - 17 msgs Baron, Jonathan
- MUD-Dev digest, Vol 1 #303 - 17 msgs John Buehler
- MUD-Dev digest, Vol 1 #303 - 17 msgs Baron, Jonathan
- ADMIN: HTML email, the reasons against J C Lawrence
- Need for a departure from reality? Matt Mihaly
- Broken Economies (was Learning about MUDs) geoffrey@yorku.ca
- Broken Economies (was Learning about MUDs) Koster, Raph
- Broken Economies (was Learning about MUDs) Timothy Dang
- Broken Economies (was Learning about MUDs) Koster, Raph
- Broken Economies (was Learning about MUDs) Timothy Dang
- Broken Economies (was Learning about MUDs) Madman Across the Water
- Broken Economies (was Learning about MUDs) Derek Licciardi
- Broken Economies (was Learning about MUDs) Vincent Archer
- Broken Economies (was Learning about MUDs) Sellers, Michael
- Balancing Melee vs Ranged Combat in Games Which Model Space Daniel.Harman@barclayscapital.com
- Balancing Melee vs Ranged Combat in Games Which Model Space Zak Jarvis
- Balancing Melee vs Ranged Combat in Games Which Model Space Brian Hook
- Balancing Melee vs Ranged Combat in Games Which Model Space Jerrith
- Balancing Melee vs Ranged Combat in Games Which Model Space Brian Hook
- Balancing Melee vs Ranged Combat in Games Which Model Space Jerrith
- Balancing Melee vs Ranged Combat in Games Which Model Space Brian Hook
- Balancing Melee vs Ranged Combat in Games Which Mod el Space Daniel.Harman@barclayscapital.com
- Balancing Melee vs Ranged Combat in Games Which Model Space shren
- Balancing Melee vs Ranged Combat in Games Which Model Space shren
- Balancing Melee vs Ranged Combat in Games Which Model Space Philip
- Balancing Melee vs Ranged Combat in Games Which Model Space Hal Bonnin
- Balancing Melee vs Ranged Combat in Games Which Model Space Kwon Ekstrom
- Balancing Melee vs Ranged Combat in Games Which Model Space rayzam
- RE:The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Sellers, Michael
- Sv: Balancing Melee vs Ranged Combat in Games Which Model Space Nicolai Hansen
- ADMIN: Subject header maintenance (was: Broken currencies) J C Lawrence
- Broken currencies Matt Mihaly
- Broken currencies Jim S
- Broken currencies Koster, Raph
- Broken currencies Lars Duening
- Broken currencies Matt Mihaly
- Broken currencies Lars Duening
- Broken currencies Brian 'Psychochild' Green
- Broken currencies Matt Mihaly
- Broken currencies Timothy Dang
- Broken currencies Phillip Lenhardt
- Broken currencies Matt Mihaly
- Broken currencies Phillip Lenhardt
- Broken currencies John Buehler
- Broken currencies Derek Licciardi
- Broken currencies Ben Sizer
- Broken currencies Adam Martin
- Broken currencies Ben Sizer
- Broken currencies Matt Mihaly
- Broken currencies Timothy Dang
- Broken currencies Michael Dekker
- Broken currencies Miroslav Silovic
- Broken currencies Matt Mihaly
- Broken currencies Timothy Dang
- [DGN] Balancing Melee vs Ranged Combat in Games Which Model Space Ananda Dawnsinger
- Broken currencies Matt Mihaly
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Baron, Jonathan
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Sellers, Michael
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Baron, Jonathan
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Dave Rickey
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) F. Randall Farmer
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Lee Sheldon
- The Monad (was: Broken Economies) shren
- The Monad (was: Broken Economies) Matt Mihaly
- The Monad (was: Broken Economies) John Buehler
- The Monad (was: Broken Economies) Matt Mihaly
- A User's Guide to TCP Windows J C Lawrence
- Balance J C Lawrence
- Economic & Derek Licciardi
- Economic & Matt Mihaly
- Economic & Timothy Dang
- Money supply in game economies (formerly Broken economies) Matt Mihaly
- Money supply in game economies (formerly Brokeneconomies) geoffrey@yorku.ca
- Money supply in game economies (formerly Broken eco nomies) Koster, Raph
- Money supply in game economies (formerly Broken economies) Timothy Dang
- [DGN] Balancing Melee/Ranged Combat Kwon Ekstrom
- Room Searching - how about doors? Gavin Doughtie
- Tracking Hulbert, Leland
- Online Games get an overview Koster, Raph
- [DGN] Money supply in game economies (formerly Brok en economies) Daniel.Harman@barclayscapital.com
- [DSG] Concrete idea behind currency (was: The Monad and Broken Economies) Paul Schwanz
- Majestic (was The Sims Online) Matt Mihaly
- Majestic (was The Sims Online) Baron, Jonathan
- Majestic (was The Sims Online) Matt Mihaly
- Majestic (was The Sims Online) Baron, Jonathan
- Majestic (was The Sims Online) Sellers, Michael
- Majestic (was The Sims Online) Matt Mihaly
- Majestic (was The Sims Online) Matt Mihaly
- Identity and Economies [was Money supply in game economies (formerly Broken eco nomies) ] Joe Andrieu
- Virtual Suicide (Was: Money supply in game economies) Dave Rickey
- Virtual Suicide (Was: Money supply in game economie s) Daniel.Harman@barclayscapital.com
- Virtual Suicide (Was: Money supply in game economies) Dave Rickey
- Virtual Suicide (Was: Money supply in game economie s) Daniel.Harman@barclayscapital.com
- The Sims Online (was MUD-Dev digest, Vol 1 #301 - 15 msgs) Baron, Jonathan
- Distributed Muds Jim Craig
- [DSG] Money supply in game economies (was: Broken Economies) Paul Schwanz
- TECH DGN: (was Broken currencies) Nathan F.Yospe
- [DESIGN] Economic & Marian Griffith
- [DESIGN] Economic & Derek Licciardi
- [DESIGN] Economic & Marian Griffith
- [DESIGN] Economic & John Buehler
- [DESIGN] Economic & Travis Nixon
- [DESIGN] Economic & Travis Casey
- [DESIGN] Economic & Matt Mihaly
- [DESIGN] Economic & Travis Nixon
- [DESIGN] Economic & Matt Mihaly
- Author Unknown (was: Money supply in game economies) Emil Eifrém
- TECH: Distributed Muds Emil Eifrém
- TECH: Distributed Muds Jim Craig
- TECH: Distributed Muds Frank Crowell
- TECH: Distributed Muds Colin Coghill
- TECH: Distributed Muds Vincent Archer
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Vincent Archer
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Vincent Archer
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Brian Hook
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Brian Hook
- TECH: Distributed Muds Adam Martin
- Shattered World's economy John W Pierce
- Shattered World's economy Erik Jarvi
- [BIZ] Advertising sprawl (yahoo) J C Lawrence
- [BIZ] Advertising sprawl (yahoo) Frank Crowell
- [BIZ] Advertising sprawl (yahoo) Lars Duening
- [BIZ] Advertising sprawl (yahoo) Vincent Archer
- [BIZ] Advertising sprawl (yahoo) Dave Rickey
- [BIZ] Advertising sprawl (yahoo) Matt Mihaly
- [BIZ] Advertising sprawl (yahoo) Vincent Archer
- [BIZ] Advertising sprawl (yahoo) shren
- [BIZ] Advertising sprawl (yahoo) John Buehler
- [BIZ] Advertising sprawl (yahoo) Ian Macintosh
- [BIZ] Advertising sprawl (yahoo) Daniel.Harman@barclayscapital.com
- [BIZ] Advertising sprawl (yahoo) Matt Mihaly
- [BIZ] Advertising sprawl (yahoo) Caliban Tiresias Darklock
- [BIZ] Advertising sprawl (yahoo) Matt Mihaly
- [BIZ] Advertising sprawl (yahoo) J C Lawrence
- [BIZ] Advertising sprawl (yahoo) Travis Casey
- [BIZ] Advertising sprawl (yahoo) Daniel.Harman@barclayscapital.com
- [BIZ] Advertising sprawl (yahoo) Matt Mihaly
- [BIZ] Advertising sprawl (yahoo) Vincent Archer
- [BIZ] Advertising sprawl (yahoo) Matt Mihaly
- RG Interview Cassandra
- NEWS DGN Wired News article about EQ Zak Jarvis
- [DESIGN] Economy goals (was: Broken currencies) Vincent Archer
- [DESIGN] Economy goals (was: Broken currencies) shren
- [DESIGN] Economy goals (was: Broken currencies) Freeman, Jeff
- [DESIGN] Economy goals (was: Broken currencies) Derek Licciardi
- [DESIGN] Economy goals (was: Broken currencies) Vincent Archer
- [DESIGN] Economy goals (was: Broken currencies) Freeman, Jeff
- [DESIGN] Economy goals (was: Broken currencies) Adam Martin
- Curtailing the 'Super-Rich Effect' Bob McFakename
- Curtailing the 'Super-Rich Effect' Lynx
- Curtailing the 'Super-Rich Effect' Matt Mihaly
- Curtailing the 'Super-Rich Effect' Bob McFakename
- Curtailing the 'Super-Rich Effect' Matt Mihaly
- Curtailing the 'Super-Rich Effect' Phillip Lenhardt
- Curtailing the 'Super-Rich Effect' Matt Mihaly
- Curtailing the 'Super-Rich Effect' Travis Casey
- Curtailing the 'Super-Rich Effect' Mordengaard
- Curtailing the 'Super-Rich Effect' Michael Tresca
- Curtailing the 'Super-Rich Effect' Trump
- Curtailing the 'Super-Rich Effect' Daniel.Harman@barclayscapital.com
- Curtailing the 'Super-Rich Effect' Dave Rickey
- Curtailing the 'Super-Rich Effect' Michael Tresca
- Movie grosses Matt Mihaly
- Movie grosses Brian 'Psychochild' Green
- Movie grosses Koster, Raph
- Movie grosses Matt Mihaly
- Movie grosses Myschyf
- Movie grosses Matt Mihaly
- StarPeace (was Money supply in game economies) Michael Dekker
- TECH: Distributed Muds Bobby Martin
- TECH: Distributed Muds Adam Martin
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Vincent Archer
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Brian Hook
- TECH: Distributed Muds Nick Walker
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Brian Hook
- TECH: Distributed Muds shren
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Brian Hook
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds shren
- TECH: Distributed Muds Eli Stevens
- TECH: Distributed Muds John Buehler
- TECH: Distributed Muds Kevin Littlejohn
- TECH: Distributed Muds John Buehler
- TECH: Distributed Muds Ola Fosheim Grøstad
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Matthew D. Fuller
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Vincent Archer
- TECH: Distributed Muds Ola Fosheim Grøstad
- TECH: Distributed Muds Christopher Kohnert
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Jon Lambert
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds Jon Lambert
- TECH: Distributed Muds Matthew D. Fuller
- TECH: Distributed Muds Owen
- TECH: Distributed Muds Jon Lambert
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds shren
- TECH: Distributed Muds Jon Lambert
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds Jon Leonard
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Kevin Littlejohn
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Kwon Ekstrom
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Kwon Ekstrom
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Neil Brown
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds Derek Snider
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds shren
- TECH: Distributed Muds John Buehler
- TECH: Distributed Muds Steven Fleischaker
- TECH: Distributed Muds Jon Lambert
- TECH: Distributed Muds Daniel.Harman@barclayscapital.com
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Daniel.Harman@barclayscapital.com
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Caliban Tiresias Darklock
- TECH: Distributed Muds Christopher Kohnert
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Chris Gray
- TECH: Distributed Muds Kwon Ekstrom
- TECH: Distributed Muds Bruce
- TECH: Distributed Muds Vincent Archer
- TECH: Distributed Muds Brad Roberts
- TECH: Distributed Muds Vincent Archer
- [DESIGN] Economic & Currency Solutions Phillip Lenhardt
- Curtailing the 'Super-Rich' Effect Bob McFakename
- Curtailing the 'Super-Rich' Effect Daniel.Harman@barclayscapital.com
- TECH: Flash Crowds and overflow control Gavin Doughtie
- TECH: Flash Crowds and overflow control Marc Bowden
- TECH: Flash Crowds and overflow control Vincent Archer
- TECH: Flash Crowds and overflow control Koster, Raph
- TECH: Flash Crowds and overflow control J C Lawrence
- TECH: Flash Crowds and overflow control Marc Bowden
- TECH: Flash Crowds and overflow control Justin Rogers
- BUSINESS: I need Online Gaming Revenue Projections. F. Randall Farmer
- [DESIGN] Economic & Currency Solutions Vincent Archer
- [DESIGN] Economic & Currency Solutions Timothy Dang
- [DESIGN] Economic & Currency Solutions Taylor Daynes
- [DESIGN] Economic & Currency Solutions Vincent Archer
- ADMIN: Moving... J C Lawrence
- UO and eBay figures Koster, Raph
- MUD for sale Chris Gray
- MUD for sale Caliban Tiresias Darklock
- MUD for sale Dave Rickey
- MUD for sale Bruce
- MUD for sale Chris Gray
- MUD for sale Kevin Littlejohn
- ADMIN: The move and current status J C Lawrence
- Virtual Suicide (Was: Money supply in game economies) Martin Burke
- TECH: Java ARMI Bobby Martin
- TECH: AmigaMud DB questions Bruce
- TECH: AmigaMud DB questions Chris Gray
- TECH: AmigaMud DB questions Bruce
- TECH: AmigaMud DB questions Chris Gray
- TECH: AmigaMud DB questions Jon Lambert
- Kuro5hin: What can games teach us about human-computer interaction? J C Lawrence
- Review of Galactic Emperor: Succession in LumTheMad's Forums Christopher Allen
- [BIZ] New EQ Expansion Daniel.Harman@barclayscapital.com
- Twisted Python J C Lawrence
- [TECH] Distributed MUD Kwon Ekstrom
- [TECH] Distributed MUD Jeremy Noetzelman
- [TECH] Distributed MUD Kwon Ekstrom
- [TECH] Distributed MUD J C Lawrence
- EQ: what makes a zone interesting? Frank Crowell
- EQ: what makes a zone interesting? J C Lawrence
- EQ: what makes a zone interesting? shren
- EQ: what makes a zone interesting? J C Lawrence
- EQ: what makes a zone interesting? Elia Morling
- Imaginary Realities - April 2001 David Bennett
- [BIZ][TECH] worlds.com gets patent bruce@puremagic.com
- [BIZ][TECH] worlds.com gets patent Jessica Mulligan
- [BIZ][TECH] worlds.com gets patent Bruce
- [BIZ][TECH] worlds.com gets patent Frank Crowell
- [BIZ][TECH] worlds.com gets patent Kwon Ekstrom
- [BIZ][TECH] worlds.com gets patent John Robert Arras
- [BIZ][TECH] worlds.com gets patent Jon Lambert
- [BIZ][TECH] worlds.com gets patent John Buehler
- [BIZ][TECH] worlds.com gets patent Frank Crowell
- [BIZ][TECH] worlds.com gets patent Travis Nixon
- [BIZ][TECH] worlds.com gets patent Marian Griffith
- [BIZ][TECH] worlds.com gets patent John Buehler
- [BIZ][TECH] worlds.com gets patent Dave Rickey
- [BIZ][TECH] worlds.com gets patent Derek Licciardi
- called shots Josh Rollyson
- called shots Matt Mihaly
- called shots Mordengaard
- called shots Ling Lo
- called shots shren
- called shots John Buehler
- called shots Kwon Ekstrom
- called shots Travis Casey
- called shots Travis Casey
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Brad Roberts
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Dominic J. Eidson
- TECH: reliablity (was: Distributed Muds) Bruce
- TECH: reliablity (was: Distributed Muds) Derek Snider
- TECH: reliablity (was: Distributed Muds) Bruce
(I've re-arranged some of the quoted sections to reply to things more
coherently. (I hope.))
Derek Snider wrote:
> Are you seriously trying to tell me that memory leaks, memory
> corruption, and crashes _never_ happen when you "follow sound, basic
> software engineering priciples"?
No, but they happen much much less often. See below.
> Whatever programming utopia you exist in is far, far, far away from
> the world of commercial game development... or any competitive
> commercial development.
>
> The larger and more complex a program gets, the more likely something
> is to go wrong, and the harder it is to track it down.
> The only way to have a bug-free program is to write it bug-free in the
> first place.
>
> Unfortunately this is nearly impossible with high-pressure deadlines.
This seems to be a rather self-defeating viewpoint. :(
For one approach, read what John Buehler was saying here on MUD-Dev
about components some months ago. There's plenty of literature on that
type of strategy as well.
Another approach to avoiding errors is to separate out common classes of
bugs and structure your system so that they are much more difficult to
have happen. With a long running server, it is necessary that the
server both be stable and have a consistent footprint. So just
addressing those points:
* Memory leaks? Use GC. (Or refcounting, ugh.)
* Refcount leaks? Check out some of the Mozilla tools for
detecting and debugging these.
* Bad pointer references, overwriting memory, other
memory errors? Don't use C or C++ for everything.
Use something that is safer like Python, Scheme, Java,
whatever for higher level logic. Alternatively, if
are going to use C or C++ throughout, make sure that
all of your common datastructures have solid unit tests
or come from a known-good-and-stable source (possibly
STL).
There are many other concerns as well, such as dealing with complexity
in the internal interfaces. But many of these can be handled at the
architectural level, if anticipated (as they should be). For an example
of dealing with the complexity of interfaces, see the post that I refer
to below about a particular system within the game that I work for, TEC,
http://www.eternal-city.com/.
But one of the most important things to do is to have a set of unit and
regression tests and to be vigilant in updating them and running them on
all of your core architecture. I don't add core architectural features
to Cold without also adding a set of tests and running those tests under
Purify. (And sometimes performance tests and running them under gprof.)
Finally, ensure that you have code that can help you detect critical
errors as they happen and help to isolate the cause. An example of this
is that in Cold, if a memory allocation fails, currently the server will
panic and attempt to shut down cleanly. I've only seen this happen due
to rogue softcode, so we've got a couple of approaches for dealing with
this:
* Limits on execution time of softcode. You need to yield to
other tasks and if you fail to do so, you get killed. This
is also part of the strategy for ensuring that each task gets
to run regularly as we're a cooperatively tasking system.
* Allocation logging: You can tell the server to log the current
softcode stack trace for any allocation/reallocation above a
given size. This helps detect potential problems within
softcode where it is dealing with datasets that are larger
than expected or are constantly growing.
* Failed allocation logging: The server will log the current
stack trace for every task when an allocation fails and it
is shutting down. This can allow you to determine exactly
what was happening at the time of the failure.
A lot of this helps with the problems that can be caused by having
lesser experienced programmers working at the softcode level by raising
awareness of some of the lower-level issues and not letting them go into
dangerous territory without warning.
Another approach entirely for dealing with allowing staff to extend or
modify the game code would be to stop working with the typical
programming environment and move to something that is rules-based with
an interface that makes it easy for them to modify behavior and
reactions to events. While TEC doesn't (yet?) employ a rules-based
approach, we already support much of the underlying infrastructure for
intercepting events and observing actions which I've previously
described on the list in
http://www.kanga.nu/archives/MUD-Dev-L/2001Q1/msg00415.php
These types of things not only -can- serve to reduce the amount of
errors, but -do- in projects that I work on today. As such, I'm hard
pressed to see myself as living in some sort of programmer's utopia.
All of this only helps with errors at the level of writing code though.
Addressing things at the specification level (or even having a
specification) is an entirely different topic. They also don't really
help with solving large-scale architectural problems, such as
complexity, which are things that really need to be addressed at the
specification level. But really, there isn't any reason for a lot of
the common sorts of errors to be a problem if you actively take steps to
mitigate your risk.
> I've used Purify and Insure, and many other memory debuggers, and they
> usally choke on large complex programs that make heavy use of memory.
Insure does indeed fall over (and costs way too much). I've used it on
Linux with big software and watched something take over 10 hours that
usually takes about 5 minutes. However, I've run Purify and other memory
debugging utilities on Solaris (and Linux where they were available)
extensively and on large programs (like Mozilla). Even with a 700-800M
process size, things were still manageable and worked acceptably.
But some of the refcount debugging tools developed for Mozilla as well
as things like the Boehm GC in leak detection mode (especially if you
have some of Patrick Beard's patches to enhance the detection of 'leak
roots' for Mozilla) aren't that bad at all, and are in fact, superior to
Purify within their particular problem domains. The only issue with
them is that you don't get the other sorts of error detection that
Purify provides. But for that, bounded pointer support may make it into
gcc 3.1 (it missed the 3.0 train). There's no reason to not be able to
detect the majority of these types of bugs during routine testing.
That's why Cold is so stable and leak-free. (And the same for TOM as well.)
As a quick aside, in Smaug, you're leaking some memory allocated via the
CREATE macro in mob_act_add() fairly regularly. I didn't see any unit
tests in the 1.4a dist, so that was all I noticed in quickly running it
under Purify.
- Bruce - TECH: reliablity (was: Distributed Muds) Derek Snider
- TECH: reliablity (was: Distributed Muds) Alex
- TECH: reliablity (was: Distributed Muds) shren
- TECH: reliablity (was: Distributed Muds) Ola Fosheim Grøstad
- TECH: reliablity (was: Distributed Muds) Derek Snider
- TECH: reliablity (was: Distributed Muds) Bruce
- TECH: reliablity (was: Distributed Muds) Ola Fosheim Grøstad
- TECH: reliablity (was: Distributed Muds) John Buehler
- TECH: reliablity (was: Distributed Muds) Ola Fosheim Grøstad
- TECH: reliablity (was: Distributed Muds) John Buehler
- TECH: reliablity (was: Distributed Muds) Kwon Ekstrom
- TECH: reliablity (was: Distributed Muds) Derek Licciardi
- TECH: reliablity (was: Distributed Muds) Ola Fosheim Grøstad
- TECH: reliablity (was: Distributed Muds) John Buehler
- TECH: reliablity (was: Distributed Muds) Ola Fosheim Grøstad
- TECH: reliablity (was: Distributed Muds) John Buehler
- TECH: reliablity (was: Distributed Muds) Kwon Ekstrom
- TECH: prefetching/madvise (was: Distributed Muds) Bruce
- TECH: prefetching/madvise (was: Distributed Muds) Matthew D. Fuller
- TECH: Distributed Muds J C Lawrence
- TECH: Distributed Muds Scion Altera
- Re:called shots Eric Lamy
- Where are we now? Greg Munt
- Where are we now? Ronan Farrell
- Where are we now? Matt Mihaly
- Where are we now? Greg Munt
- Where are we now? Ronan Farrell
- Where are we now? Adam Martin
- Where are we now? Bryce Harrington
- Where are we now? Deidril
- Where are we now? Bryce Harrington
- Where are we now? Elia Morling
- Where are we now? Matt Mihaly
- Where are we now? McManus, Susan
- Where are we now? Matt Mihaly
- Where are we now? Kwon Ekstrom
- Where are we now? Brian Hook
- Where are we now? Kwon Ekstrom
- Where are we now? Michael Tresca
- Where are we now? S. Patrick Gallaty
- Where are we now? Greg Munt
- Where are we now? S. Patrick Gallaty
- Where are we now? Matt Mihaly
- Where are we now? Koster, Raph
- Where are we now? Greg Munt
- Where are we now? Matt Mihaly
- Where are we now? Greg Munt
- Where are we now? Matt Mihaly
- Where are we now? Bruce
- Where are we now? Ola Fosheim Grøstad
- Where are we now? Koster, Raph
- Where are we now? Richard A. Bartle
- Where are we now? Ola Fosheim Grøstad
- Where are we now? Bruce
- Where are we now? Greg Munt
- Where are we now? Koster, Raph
- Where are we now? rayzam
- Where are we now? Madman Across the Water
- Where are we now? Bryce Harrington
- Where are we now? Madman Across the Water
- Where are we now? Freeman, Jeff
- TECH: DBM vs BDB speeds (was: AmigaMud DB questions) Bruce
- fault tolerance and character files Steven Fleischaker
- fault tolerance and character files Kwon Ekstrom
- fault tolerance and character files Bruce
- fault tolerance and character files Kwon Ekstrom
- fault tolerance and character files Vincent Archer