2000Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] Embedded languages, object persistance... ack. -->
<!--X-From-R13: Yriva Zvggyrwbua <qnevhfNpbaarpg.pbz.nh> -->
<!--X-Date: Tue, 18 Jan 2000 18:56:16 &#45;0800 -->
<!--X-Message-Id: 20000118230957.3C5E64181E#koro,off.connect.com.au -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 20000119092215.A513#agrajag,internal -->
<!--X-Reference: 000c01bf51db$81f3f600$f6088d18#busy1,on.wave.home.com -->
<!--X-Reference: 00c801bf5628$028a4580$18095381@POINTSMAN -->
<!--X-Reference: nop#mitre,org -->
<!--X-Reference: E12AUlR&#45;0002dN&#45;00#dingo,kanga.nu -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] Embedded languages, object persistance... ack.</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:darius#connect,com.au">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00139.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00142.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00137.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00092.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00144">Author</A>
&nbsp;|&nbsp;<A HREF="#00144">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00144">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] Embedded languages, object persistance... ack.</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev] Embedded languages, object persistance... ack. </LI>
<LI><em>From</em>: Kevin Littlejohn &lt;<A HREF="mailto:darius#connect,com.au">darius#connect,com.au</A>&gt;</LI>
<LI><em>Date</em>: Wed, 19 Jan 2000 10:09:57 +1100</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>

&gt;&gt;&gt; icecube#ihug,co.nz wrote
&gt; On Tue, Jan 18, 2000 at 01:17:25AM -0800, J C Lawrence wrote:
&gt; &gt; On Mon, 3 Jan 2000 15:20:42 -0500 
&gt; &gt; Jay Carlson &lt;nop#mitre,org&gt; wrote:
&gt; &gt; 
&gt; &gt; &gt; The big lose of persistence is that it's harder to get things back
&gt; &gt; &gt; to a known state if your code screws up.  
&gt; &gt; 
&gt; &gt; In general this is a function of transaction and logging models.
&gt; &gt; Given a well implemented transactional model rolling back the log to 
&gt; &gt; the last set of compleat transactions *should* be cheap and fast.
&gt; 
&gt; I read Jay's comment more along the lines of "if your code screws up and
&gt; creates 50,000 Swords-o'-Death scattered across the world" rather than a
&gt; transaction issue. If your world is persistant, you can't just "fix the code
&gt; and reboot" to get back to an undamaged game state.

That depends on your persistance, tho.  Most muds maintain at least enough
persistance for the above scenario to be a problem one way or the other -
chances are killing the mud will either save the characters (and the 50,000
swords'o'death), or won't save both - either way, you've got a data
cleaning problem.

Cleaning up problems like that might be easier in a text file, with vi, or
easier in an sql database, or easier in your proprietary bytecode-type
persistant database - it really depends on the type of fsckup, and the
tools you've built to micro-manage your data.

The advantage of transactional stuff is that you know, if the mud dies
part-way through something, _everything_ is going to be in either one state
or another - not half-way through changing states.  While that doesn't help
for the 50,000 swords'o'death problem, it at least means that crashes,
spontaneous reboots, whatever, aren't going to leave your data in an
"unknown" state - you'll at least be able to bring the engine up and carry
on, albeit maybe with one or two transactions that 'never happened'.

Of course, engineering all this to happen in a sane way without demanding
in-depth knowledge on the part of the builder-coders (those people who
write little mob scripts and so forth) is another trick again...

KevinL
(Persistance doesn't necessarily mean you can't make backups, and restore
to them, either...)



_______________________________________________
MUD-Dev maillist  -  MUD-Dev#kanga,nu
<A  HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A>

</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00137" HREF="msg00137.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></STRONG>
<UL><LI><EM>From:</EM> icecube#ihug,co.nz</LI></UL></LI>
<LI><STRONG><A NAME="00043" HREF="msg00043.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></STRONG>
<UL><LI><EM>From:</EM> "Jay Carlson" &lt;nop#mitre,org&gt;</LI></UL></LI>
<LI><STRONG><A NAME="00124" HREF="msg00124.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></STRONG>
<UL><LI><EM>From:</EM> J C Lawrence &lt;claw#kanga,nu&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00139.html">Re: [MUD-Dev] Community Relations</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00142.html">[MUD-Dev] How to handle/display partial language skill</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00137.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00092.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00144"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00144"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>Re: [MUD-Dev] Embedded languages, object persistance... ack.</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00046" HREF="msg00046.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></strong>, 
Jay Carlson <a href="mailto:nop#mitre,org">nop#mitre,org</a>, Tue 04 Jan 2000, 01:28 GMT
</LI>
<LI><strong><A NAME="00043" HREF="msg00043.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></strong>, 
Jay Carlson <a href="mailto:nop#mitre,org">nop#mitre,org</a>, Mon 03 Jan 2000, 20:25 GMT
<UL>
<LI><strong><A NAME="00124" HREF="msg00124.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Tue 18 Jan 2000, 09:17 GMT
<UL>
<LI><strong><A NAME="00137" HREF="msg00137.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></strong>, 
icecube <a href="mailto:icecube#ihug,co.nz">icecube#ihug,co.nz</a>, Tue 18 Jan 2000, 20:52 GMT
</LI>
<LI><strong><A NAME="00144" HREF="msg00144.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></strong>, 
Kevin Littlejohn <a href="mailto:darius#connect,com.au">darius#connect,com.au</a>, Wed 19 Jan 2000, 02:56 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
<LI><strong><A NAME="00092" HREF="msg00092.html">Re: [MUD-Dev] Embedded languages, object persistance... ack.</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Sat 15 Jan 2000, 07:14 GMT
</LI>
</ul>
</LI>
<LI><strong><A NAME="00001" HREF="msg00001.html">Re: [MUD-Dev] Admins as Mortals twist</A></strong>, 
Greg Miller <a href="mailto:gmiller#classic-games,com">gmiller#classic-games,com</a>, Fri 31 Dec 1999, 21:22 GMT
<UL>
<LI><strong><A NAME="00025" HREF="msg00025.html">Re: [MUD-Dev] Admins as Mortals twist</A></strong>, 
Marian Griffith <a href="mailto:gryphon#iaehv,nl">gryphon#iaehv,nl</a>, Sun 02 Jan 2000, 22:20 GMT
<UL>
<LI><strong><A NAME="00037" HREF="msg00037.html">Re: [MUD-Dev] Admins as Mortals twist</A></strong>, 
Greg Miller <a href="mailto:gmiller#classic-games,com">gmiller#classic-games,com</a>, Mon 03 Jan 2000, 16:44 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>