From crossfire-request Tue Mar 1 20:22:04 1994 Return-Path: Received: from andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 1 Mar 1994 20:22:03 +0100 Received: from localhost (postman@localhost) by andrew.cmu.edu (8.6.4/8.6.4) id OAA12746 for crossfire@ifi.uio.no; Tue, 1 Mar 1994 14:21:49 -0500 Received: via switchmail; Tue, 1 Mar 1994 14:21:49 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 1 Mar 1994 14:20:04 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 1 Mar 1994 14:19:56 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Tue, 1 Mar 1994 14:19:55 -0500 (EST) Message-ID: Date: Tue, 1 Mar 1994 14:19:55 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Servers In-Reply-To: <0097ACAF.66E9BDDF.31304@atuk.aspentec.com> References: <0097ACAF.66E9BDDF.31304@atuk.aspentec.com> Status: RO There's an ancient server on madhatter.ws.cc.cmu.edu, which will be updated as soon as I get a chance to install .90.1, and test it. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Tue Mar 1 12:46:17 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 1 Mar 1994 12:46:16 +0100 Received: from localhost (haatanen@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id NAA08721; Tue, 1 Mar 1994 13:46:11 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403011146.NAA08721@cc.lut.fi> Subject: Re: Crossfire Metaserver To: crossfire@ifi.uio.no Date: Tue, 1 Mar 1994 13:46:10 +0200 (EET) In-Reply-To: <9403011110.AA04868@lgserv1.cs.uit.no> from "Kjetil Jacobsen" at Mar 1, 94 12:10:55 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 782 Status: RO From: kjetilja@stud.cs.uit.no (Kjetil Jacobsen) > I don't know if this has been up before, but anyway: What about making a > crossfire MetaServer which keeps track of all running servers around the > world. I don't remember any discussion of metaserver before. And dynamically adding every game in it wouldn't very useful, since in crossfire players want keep their characters (compare to MUDs instead of XPilot). > I think it would be very rewarding for the players, as it's a great > success with XPilot. The main reason for success with XPilot comes client/server -model (suprise :). The first versions of xpilot worked same way than current crossfire (i.e using X). [Hmm, if I don't remember wrong, Frank has been mentioned somewhere in XPilot credits also] -Tero From crossfire-request Tue Mar 1 12:10:58 1994 Return-Path: Received: from hpserv0.cs.uit.no by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 1 Mar 1994 12:10:58 +0100 Received: from lglab12.cs.UiT.No by hpserv0.cs.uit.no (1.37.109.4/Task/HJ-5) id AA26205; Tue, 1 Mar 94 12:10:57 +0100 Received: by lgserv1.cs.uit.no (1.37.109.8/Task/HJ-5) id AA04868; Tue, 1 Mar 1994 12:10:56 +0100 From: kjetilja@stud.cs.uit.no (Kjetil Jacobsen) Message-Id: <9403011110.AA04868@lgserv1.cs.uit.no> Disclaimer: This message was sent from, not by, the University of Tromsoe Subject: Crossfire Metaserver To: crossfire@ifi.uio.no Date: Tue, 1 Mar 1994 12:10:55 +0100 (MET) X-Mailer: ELM [version 2.4 PL23] Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 727 Status: RO Hi. I don't know if this has been up before, but anyway: What about making a crossfire MetaServer which keeps track of all running servers around the world. This would make it a lot easier if people want to join a remote server. It shouldn't be too hard to accomplish, it's just a matter of sending a packet to the MetaServer each time a new local server is started, and a packet when the server is taken down (Very much like how it is done in XPilot...try this for a start: telnet xpilot.cs.uit.no 4400) .. With a MetaServer you could also have a global namelist, scorelist etc...I think it would be very rewarding for the players, as it's a great success with XPilot. Regards, Kjetil Jacobsen (kjetilja@stud.cs.uit.no) From crossfire-request Tue Mar 1 11:43:13 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 1 Mar 1994 11:43:12 +0100 Received: by ida.csd.uu.se with SMTP id AA01996 (5.65c8/IDA-1.4.4 for ); Tue, 1 Mar 1994 11:42:47 +0100 Message-Id: <199403011042.AA01996@ida.csd.uu.se> To: yangq@cs.wmich.edu (Dr. Emacs) Cc: crossfire@ifi.uio.no Subject: Re: A question ... In-Reply-To: Your message of "Tue, 01 Mar 1994 05:28:47 EST." <9403011031.AA03039@cs.wmich.edu> Date: Tue, 01 Mar 1994 11:42:46 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO >Matching fonts to crossfire: 1 (crossfire) >xhost +madhatter.ws.cc.cmu.edu >madhatter.ws.cc.cmu.edu being added to access control list >Warning: The remote version is older than your client version. >(It should still be backward compatible with your font) >Failed to add hewey:0.0: Can't open display hewey:0.0. > The server needs the full path to your machine, so DISPLAY=hewey:0.0 wont do. You need DISPLAY=hewey.cs.wmich.edu:0.0. /Have phun From crossfire-request Tue Mar 1 11:29:16 1994 Return-Path: Received: from cs.wmich.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 1 Mar 1994 11:29:12 +0100 Received: from hewey.cs.wmich.edu by cs.wmich.edu (4.1/SMI-4.1) id AA03039; Tue, 1 Mar 94 05:31:04 EST From: yangq@cs.wmich.edu (Dr. Emacs) Message-Id: <9403011031.AA03039@cs.wmich.edu> Subject: A question ... To: crossfire@ifi.uio.no Date: Tue, 1 Mar 1994 05:28:47 -0500 (EST) X-Mailer: ELM [version 2.4 PL23beta2] Content-Type: text Content-Length: 1125 Status: RO Hi, folks! Ummm, ok, this definitely is a newbie question. well, first time playing crossfire, what you expect? Anyways, I compiled the crossfireclient, when I typed crossclient -server madhatter.ws.cc.cmu.edu I get the following messages: Matching fonts to crossfire: 1 (crossfire) xhost +madhatter.ws.cc.cmu.edu madhatter.ws.cc.cmu.edu being added to access control list Warning: The remote version is older than your client version. (It should still be backward compatible with your font) Failed to add hewey:0.0: Can't open display hewey:0.0. Ok, why can't the server add me in? whatelese do I miss here? Thanks. - Rick -- ________________ (-_______________\ To seek out new structs, and polymorphism... _-_ ,-' / To boldy go where no one has gone before... ____.---'___`---._,-'___/ \___________________](@)_> ---------------------------------------- `'`--.____.-' -==`. \ Yang Qing-Kuang `-' ____`._\________ Western Michigan Universty (-______________/ yangq@sol.cs.wmich.edu From crossfire-request Thu Mar 3 18:30:15 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Thu, 3 Mar 1994 18:30:14 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Thu, 3 Mar 1994 18:30:12 +0100 Date: Thu, 3 Mar 1994 18:30:12 +0100 Message-Id: <19940303173012.22313.bera.ifi.uio.no@ifi.uio.no> To: cshepher@uncc.edu CC: crossfire@ifi.uio.no In-reply-to: Christopher Shepherd's message of Thu, 3 Mar 1994 11:36:35 -0500 <199403031636.LAA05747@ws184.uncc.edu> Subject: Re: crossfire.... Status: RO Here's the help message I send to those who request help from crossfire-request@ifi.uio.no: ------------------------------------------------------------------------ WHAT IS CROSSFIRE? This is a multiplayer graphical arcade and adventure game made for the X-Windows environment. It has certain flavours from other games, especially Gauntlet (TM) and Nethack/Moria. Any number of players can move around in their own window, finding and using items and battle monsters. They can choose to cooperate or compete in the same "world". REQUIREMENTS You will need UNIX, X-windows and an ANSI C compiler to compile this game. MAILING LIST There are two mailing-lists dedicated to the developement and bug-testing of crossfire. The first is for discussing bugs and features, the second is for announcing new versions. If you want to join or leave any of the lists, send mail to crossfire-request@ifi.uio.no with the subject "subscribe", "unsubscribe","subscribe announce" or "unsubscribe announce". If you use the subject "subscribe" or "unsubscribe" you will (un)subscribe to *both* lists. To send messages directly to the list, mail crossfire@ifi.uio.no. An archive of old messages can be found at ftp.ifi.uio.no in the directory /pub/crossfire/archive FTP SITES FTP-sites where you can look for the latest versions are: ftp.ifi.uio.no:/pub/crossfire (129.240.64.2) ftp.world.net:/pub/crossfire (192.243.32.18) yoyo.cc.monash.edu.au:/pub/crossfire (130.194.9.1) Please use the one nearest to you. ".no" in Europe, ".au" in Australia, ".net" in USA. If you are setting up another site, please notify me. WORLD WIDE WEB An introduction to Crossfire can be obtained via WWW, http://www.ifi.uio.no/~frankj/crossfire/ This is still under construction. ------------------------------------------------------------------------ You don't strictly need to compile the game yourself to play it, but IMHO, Crossfire is not yet suitable for playing other than on LAN's. Kjetil T. From crossfire-request Thu Mar 3 17:36:55 1994 Return-Path: Received: from mail.uncc.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 17:36:50 +0100 Received: from ws184.uncc.edu (ws184.uncc.edu [152.15.81.4]) by mail.uncc.edu (8.6.4/8.6.4) with ESMTP id LAA00322 for ; Thu, 3 Mar 1994 11:35:58 -0500 From: Christopher Shepherd Received: from localhost (cshepher@localhost) by ws184.uncc.edu (8.6.4/8.6.4) id LAA05747 for crossfire@ifi.uio.no; Thu, 3 Mar 1994 11:36:35 -0500 Date: Thu, 3 Mar 1994 11:36:35 -0500 Message-Id: <199403031636.LAA05747@ws184.uncc.edu> To: crossfire@ifi.uio.no Subject: crossfire.... Status: RO Hi, I have never heard of this game before, but i saw an entry on it in NCSA Mosaic and thought it looked interesting. Could you please send me someinfo as to where and how i can play it...thanks for your time. Chris Shepherd From crossfire-request Thu Mar 3 11:49:00 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 11:48:57 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Thu, 3 Mar 1994 10:48:51 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA17663; Thu, 3 Mar 94 10:45:27 GMT To: crossfire@ifi.uio.no Subject: Re: New players and cursed items?? In-Reply-To: Your message of "Wed, 02 Mar 1994 16:24:10 PST." <199403030024.AA18336@bolero.rahul.net> Date: Thu, 03 Mar 1994 10:50:33 +0000 Message-Id: <16639.762691833@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Mark Wedel wrote: > That has been fixed. In the new version, players start with uncursed > and identified items. Why does the equipment a new player starts with disapear if you save the character on a bed to reality? Is it because, as it says if you drop a piece of said equipment, the god who lent it retrieves it? Thanks, Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Thu Mar 3 01:53:38 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 01:53:33 +0100 Received: by bolero.rahul.net id AA20890 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Wed, 2 Mar 1994 16:53:08 -0800 Date: Wed, 2 Mar 1994 16:53:08 -0800 From: Mark Wedel Message-Id: <199403030053.AA20890@bolero.rahul.net> To: crossfire@ifi.uio.no, eneq@csd.uu.se, quinet@montefiore.ulg.ac.be Subject: Re: Xpm and rplay[d]. Status: RO You obviously need the sound files around in order to play them. A good simple test is to try somethign like 'rplay soundfile', where soundfile is one of the files in lib/sounds (the .au files). If this doesn't play, it means that something in your rplay setup is not correct. XPM: Certain things not visible below character (ie, grass, shops): This is because these are not considered floors in the archetype definition. Only objects considered floors are displayed. The best solution would probably be to change these objects into floors (any reason why they shouldn't be?) floors moving with the character: I've already fixed it in my version. --Mark From crossfire-request Thu Mar 3 01:47:51 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 01:47:48 +0100 Received: by bolero.rahul.net id AA20463 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Wed, 2 Mar 1994 16:47:28 -0800 Date: Wed, 2 Mar 1994 16:47:28 -0800 From: Mark Wedel Message-Id: <199403030047.AA20463@bolero.rahul.net> To: Tero.Haatanen@lut.fi, roy@eckerd.edu Subject: Re: Server crashing, and poison after death bug... Cc: crossfire@ifi.uio.no Status: RO Yes, I will probably put the new version up on Sunday. A message should go out on the crossfire-announce list when it happens. I try to fix bugs which cause coredumps. However, I can't do much with the stack list, as I can't tell from that what actually caused the coredump. I can only tell what function it happened it (and who knows. That function may have been passed a null pointer, which is the calling functions fault.) --Mark From crossfire-request Wed Mar 2 23:39:55 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 2 Mar 1994 23:39:54 +0100 Received: by ida.csd.uu.se id AA14052 (5.65c8/IDA-1.4.4 for crossfire@ifi.uio.no); Wed, 2 Mar 1994 23:39:53 +0100 Date: Wed, 2 Mar 1994 23:39:53 +0100 From: Rickard Eneqvist Message-Id: <199403022239.AA14052@ida.csd.uu.se> To: crossfire@ifi.uio.no Subject: Xpm and rplay[d]. X-Charset: ASCII X-Char-Esc: 29 Status: RO I have a few problems with the above mentioned additions to Crossfire. \ (1) Xpm A few "undersquares" (the tiles below the character) cant be seen, ex: shops/houses, grass etc. and also those you can see have a tendency to go along with the character when he moves, ex: roads. Why? and what do I do about it? (2) Rplay[d] For some reason I can't get Crossfire to play the defined sounds and I have the rplayd up and running. Do I have to pass a special option to Crossfire on startup (cant find one) or? I have played sounds using rplay so there is no error in that setup. If anyone have any experience in these topics I would be glad if I had a few letters to read in the morning. Thanks, /Eneq From crossfire-request Thu Mar 3 05:48:14 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 05:48:12 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA12536; Wed, 2 Mar 1994 23:45:05 +0500 Date: Wed, 2 Mar 1994 23:45:05 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403030445.AA12536@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Making maps for new versions? Content-Length: 288 Status: RO Will crossedit 0.7 allow me to make maps for 0.90.2, or whatever the latest version is? :) If so, what do I need to do that? The archtypes file.. and anything else? If possbile, I'd like to mess around with making my own map, at least just a few simple ones to get the hang of it. :) From crossfire-request Thu Mar 3 05:37:17 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 05:37:14 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA12270; Wed, 2 Mar 1994 23:34:06 +0500 Date: Wed, 2 Mar 1994 23:34:06 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403030434.AA12270@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: (test) Content-Length: 67 Status: RO Just tryingto setup procmail correctly. Sorry. :) Please ignore. From crossfire-request Wed Mar 2 19:07:09 1994 Return-Path: Received: from anna.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 2 Mar 1994 19:07:08 +0100 Received: from localhost (haatanen@localhost) by anna.it.lut.fi (8.6.5/8.6.5/1.12.kim) id UAA14361; Wed, 2 Mar 1994 20:06:42 +0200 From: Tero Haatanen Message-Id: <199403021806.UAA14361@anna.it.lut.fi> Subject: Re: Server crashing, and poison after death bug... To: roy@eckerd.edu (Jonathan Roy) Date: Wed, 2 Mar 94 20:06:41 EET Cc: crossfire@ifi.uio.no In-Reply-To: <9403021744.AA26590@acasun.eckerd.edu>; from "Jonathan Roy" at Mar 2, 94 12:44 pm X-Mailer: ELM [version 2.3 PL11] Status: RO > Also, the server crashs on us alot... Is anyone out there intereste > in trying to fixit? I can send plenty of > gdb info on each core dump. (We can crawsh it > every 10-15 minutes, it seems. Entering > the superstore in Fireham also seems to crash, continually... > memory problems of some sort via Seg fault.) This probably is caused by badly converted maps (i.e. missing archetypes). Superstore isn't only map, where this happens. When commonly used archetype is missing, it causes too many errors and the game crashes. Probably better wait a new version which should be come out soon, if Mark has no too many new patches. It contains totally new set of maps from chico server. We have them here and they seems look quite good, BTW. -Tero From crossfire-request Wed Mar 2 18:48:09 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 2 Mar 1994 18:48:06 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA26590; Wed, 2 Mar 1994 12:44:59 +0500 Date: Wed, 2 Mar 1994 12:44:59 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403021744.AA26590@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Server crashing, and poison after death bug... Content-Length: 1081 Status: RO Dying, esp from poison, should cause you to become unpoisoned... Also, the server crashs on us alot... Is anyone out there intereste in trying to fixit? I can send plenty of gdb info on each core dump. (We can crawsh it every 10-15 minutes, it seems. Entering the superstore in Fireham also seems to crash, continually... memory problems of some sort via Seg fault.) FOr anyone interested: (gdb) where #0 0x319dc in draw_info () #1 0x14b94 in emergency_save () #2 0xae94 in fatal_signal () #3 0xacdc in rec_sigsegv () #4 0xef731c54 in _sigtramp () #5 0x318e0 in draw_info () #6 0x14b94 in emergency_save () #7 0xae94 in fatal_signal () #8 0xadec in rec_sigpipe () #9 0xef731c54 in _sigtramp () #10 0x245f8 in draw_socket () #11 0x24668 in info_all_sockets () #12 0x3151c in info_all () #13 0x17e48 in enter_exit () #14 0x225f8 in do_some_living () #15 0x183f0 in process_map () #16 0x182d0 in process_active_maps () #17 0x4d140 in ReadBitmaps () #18 0x1dde0 in add_player () #19 0x11260 in parse_string () #20 0x24104 in check_socket () #21 0x18f2c in main () From crossfire-request Wed Mar 2 18:34:25 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 2 Mar 1994 18:34:24 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA26298; Wed, 2 Mar 1994 12:31:16 +0500 Date: Wed, 2 Mar 1994 12:31:16 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403021731.AA26298@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: New players and cursed items?? Content-Length: 312 Status: RO Suggestion: No cursed items to new characters. :) It's no fun to start the game and you get a cursed item.. Als, is there aspellbook of remore curse, and can you cast smalls like constitution on other players yet? (Does magic missle avoid walls now?) Please add me back on teh list.. I can't stay away. :( From crossfire-request Tue Mar 1 18:19:23 1994 Return-Path: Received: from atuk.aspentec.com by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 1 Mar 1994 18:19:21 +0100 Received: by atuk.aspentec.com (MX V3.3 VAX) id 31304; Tue, 01 Mar 1994 17:17:09 GMT Date: Tue, 01 Mar 1994 17:18:02 GMT From: "Sam Mackrill : AspenTech UK" To: crossfire@ifi.uio.no Message-ID: <0097ACAF.66E9BDDF.31304@atuk.aspentec.com> Subject: Servers Status: RO As a new user of Crossfire Could someone kindly give me a list of servers or tell me where to look Thanks Sam From crossfire-request Fri Mar 4 08:43:56 1994 Return-Path: Received: from barney.cs.city.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 08:43:55 +0100 Received: from wilma.cs.city.ac.uk by barney.cs.city.ac.uk; Fri, 4 Mar 1994 07:50:34 GMT Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.wilma.cs.city.ac.uk.sun4.41 via MS.5.6.wilma.cs.city.ac.uk.sun4_41; Fri, 4 Mar 1994 07:45:49 +0000 (GMT) Message-Id: Date: Fri, 4 Mar 1994 07:45:49 +0000 (GMT) From: Nick Williams Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII To: crossfire@ifi.uio.no, master@rahul.net, roy@eckerd.edu, Peter Mardahl Subject: Re: Classes In-Reply-To: <199403040152.RAA12547@soda.berkeley.edu> References: <199403040152.RAA12547@soda.berkeley.edu> Status: RO Regarding the lack of things to do for thieves: why not provide a spell of thievery. This would be a ranged attack which transfers ownership of a random number of items from the creature/object being attacked and the caster, with a check based on the dexterity of the caster to decide whether or not to notify the victim of his loss. A really low dexterity could set off the alarms and wake all monsters, esp. if the caster is stealthy. Thieves should then start off with this spell ALREADY LEARNT. This would be a good thing for other classes, methinks: clerics and priests should start with minor healing, etc. The only problem with this mechanism is that thieves will use up their magic points in thievery (neccessary to prevent them from going on pickpocket sprees), but then so what? They wanted to be a thief..... Nick Williams E-mail: njw@cs.city.ac.uk (MIME and ATK) Systems Architecture Research Centre, Tel: +44 71 477 8551 London, EC1V 0HB Fax: +44 71 477 8587 From crossfire-request Fri Mar 4 08:18:24 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 08:18:20 +0100 Received: by bolero.rahul.net id AA28459 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 23:20:56 -0800 Date: Thu, 3 Mar 1994 23:20:56 -0800 From: Mark Wedel Message-Id: <199403040720.AA28459@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: XPM notes. Status: RO I've made a minor change to the accepted XPM colors. Here is the list: 00 - transparent 01 - black 02 - grey25 03 - grey50 04 - grey75 05 - white 06 - firebrick 07 - red 09 - salmon 09 - sea green 10 - green 11 - pale green 12 - navy 13 - blue 14 - dodger blue 15 - yellow 16 - gold 17 - goldenrod 18 - maroon 19 - magneta 20 - pink 21 - cyan4 22 - cyan2 23 - cyan 24 - chocolate 25 - orange 26 - peru 27 - sienna 28 - khaki I took one of the browns out and put khaki in. First off, khaki is used right now, and also because there were two dark browns that looked a lot alike, and no tan. So I removed one of the dark browns and put in the light brown (khaki). --Mark From crossfire-request Fri Mar 4 06:46:09 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:46:06 +0100 Received: by bolero.rahul.net id AA23936 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 21:47:38 -0800 Date: Thu, 3 Mar 1994 21:47:38 -0800 From: Mark Wedel Message-Id: <199403040547.AA23936@bolero.rahul.net> To: crossfire@ifi.uio.no, eanders+@CMU.EDU, master@rahul.net, peterm@soda.berkeley.edu, rgg@aaii.oz.au Subject: Re: Crossfire comments Status: RO I believe one reason it is desirable to have magic weapons lighter is that your weapon speed then increases. Thus, a person with a 2 kg dagger can swing it a lot more often than that person with a giants club that weights 40 kg. You do need to factor these to choose your weapon. One problem with identify scrolls is that you might get one item identified, or you might get 5. If you have a reasonable charisma, these scrolls probably cost about 75 gp each. So they may or may not pay for themselves. I found that overall, finding that really good item once in a while pays for all the ones where I just identify +1 and cursed items. Luckily, with detect magic, you at least know what should be identified, and can sell the other stuff beforehand. One possible identification method could be something like identify altars, where you drop a certain amount of goods (money or food or whatever), and it identifies one item. Whats a good price? It should probably be cheaper than a scroll. Maybe 20 gp? This way, if you have a very high charisma, scrolls will be cheaper (ie, maybe only 50 gp), but with a scroll, you might average 2 or 3 items. As such, at a certain point, scrolls may become cheaper. The advantage of an altar would be that it never runs out. Where as shops often run out of scrolls. I'll try adding such an item, and putting it in the starting town mage shop. --Mark From crossfire-request Fri Mar 4 06:34:08 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:34:06 +0100 Received: by bolero.rahul.net id AA23380 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 21:35:29 -0800 Date: Thu, 3 Mar 1994 21:35:29 -0800 From: Mark Wedel Message-Id: <199403040535.AA23380@bolero.rahul.net> To: peterm@soda.berkeley.edu, roy@eckerd.edu Subject: Re: my TODO list--volunteers? Cc: crossfire@ifi.uio.no Status: RO Luckily, horns and rods are quite rare (or expensive). I found that horns (one of my characters has a horn of frost) maybe recharges just a little too fast, but not a great deal so. I don't use rods that often.. --Mark From crossfire-request Fri Mar 4 06:15:29 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:15:14 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA00514; Fri, 4 Mar 1994 16:15:35 +1100 Date: Fri, 4 Mar 1994 16:15:35 +1100 From: "Rupert G. Goldie" Message-Id: <199403040515.AA00514@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, eanders+@CMU.EDU, master@rahul.net Subject: Re: Crossfire comments Status: RO > It does sort of make the game into knowing how much the various stuff > should weigh. However, a character should also have this knowledge. > I don't know if there is good solution to this. > > --Mark > Two possible solutions: 1) + or - doesn't affect weight so you get no info at all. 2) make cursed items lighter as well, so a +2 sword weighs the same as a -2 sword. That way you may only know that an item is really good or really bad 8-) I think it is better that a cursed item is lighter rather than a player being able to tell that the item is cursed. Rupert From crossfire-request Fri Mar 4 03:29:22 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 03:29:21 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id VAA23825; Thu, 3 Mar 1994 21:29:48 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA21059; Thu, 3 Mar 94 21:29:09 -0500 Date: Thu, 3 Mar 94 21:29:09 -0500 From: Michael Glenn Message-Id: <9403040229.AA21059@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: Re: Crossedit compile errors. Status: RO Well, I *think* I might have found my crossedit compile problem, though I'm not sure how to fix it yet. It seems that before Posix.h is included, first Xaw.h is included, which includes X11/Intrinsic.h which includes X11/Xlib.h which includes sys/types.h WITHOUT the _POSIX_SOURCE defined. In Posix.h when it includes sys/types.h it just skips over it since _TYPES_ is already defined. This makes it so things like mode_t and pid_t never get defined, hence the parse errors. Michael From crossfire-request Fri Mar 4 03:12:35 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 03:12:34 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id SAA14902 for crossfire@ifi.uio.no; Thu, 3 Mar 1994 18:12:48 -0800 Date: Thu, 3 Mar 1994 18:12:48 -0800 From: Peter Mardahl Message-Id: <199403040212.SAA14902@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: my TODO list--volunteers? Status: RO spells: identify: identify stuff on ground if inventory is known autosave: if not already there, make emergency save obsolete by saving everyone every five minutes and NUKE the emergency save code, which causes mucho problems with people runes: a) have detect magic make them more visible: You can do this by reducing the charisma of the rune. (2/Charisma is the fraction of the time that a rune is visible.) b) if the code doesn't support it already, (I think I forced all rune attacks to be ORed with magic) make runes able to do purely physical attacks, so that they can fill the role of non-mgical traps. c) make a set of 'runes' archetypes for common traps (mousetrap, darts, rocks, pit, scythe, blades, ...) attacktypes: redo the spells of counterspell and color spray so that they use a new attacktype instead of being handled specially by move_cone picking up: make pickup better. I want it to pickup things with a large worth/weight ratio, with the threshold ratio set by the player on the fly hit- and spell-point regeneration race dependencies level-dependency for ac, fireborn and quetzalcoatl, so they are not stuck forever at a bad (or merely decent) ac The above are things that I'll do, probably soon. However, if anyone wants to take them up as a project, let me know. My time is evaporating. --------------------------------------------------------- Proposed projects list: arrows of slaying -- These need to go into the game! As it is, all arrows are alike, this sucks. +2, +3 arrows! Dragon slaying arrows! arrows of lighting/fireball.... Like casting the spell! Wouldn't these be awesome? Regards, PeterM From crossfire-request Fri Mar 4 02:55:36 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 02:55:31 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id RAA12872 for crossfire@ifi.uio.no; Thu, 3 Mar 1994 17:55:40 -0800 Date: Thu, 3 Mar 1994 17:55:40 -0800 From: Peter Mardahl Message-Id: <199403040155.RAA12872@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: proposed new 'range attack': disarm Status: RO I propose this: a new range attack: 'disarm'. It could be used by those if high dexterity to disarm runes (or set them off!! hehehe) or other traps. A somewhat hokey alternate use of 'disarm' could be to unlook doors and open/disarm chests. Doors and chests could then be seen as monsters for thieves to kill, and you could award experience for that. Disarming could become dependent on the difference in level between trap/door/chest and the thief. It occurs to me that there is NO reason, none at all, that the rune code could not be used for NON magical traps! You set the damage type to physical, and don't put in a spell, give the 'rune' an appropriate face, and there you are, a non-magical trap. It is eminently possible to make pits, mousetraps, dart shooters (would require spell coding if you wanted darts to appear in inventory). Hell, even the message is readily definable. "you set off a dart trap". I'd have to change the rune code around a little bit, but I could do this very easily. I hadn't realized how flexible my rune code actually was. All it took was a different point of view, and instead of just magical runes containing spells, I have traps of all kinds--only the archetypes and bitmaps have to be made. (Plus some minor modifications to the rune.c file, no problem.) Hell, runes won't even attack people who are flying. Beautiful. PeterM From crossfire-request Fri Mar 4 02:52:11 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 02:52:08 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id RAA12547; Thu, 3 Mar 1994 17:52:17 -0800 Date: Thu, 3 Mar 1994 17:52:17 -0800 From: Peter Mardahl Message-Id: <199403040152.RAA12547@soda.berkeley.edu> To: crossfire@ifi.uio.no, master@rahul.net, roy@eckerd.edu Subject: Re: Classes Status: RO In regards to classes, I guess now is the time to bring up again a proposal I made a long time ago. What 'class' you are, and what bitmap you use, should be determined by how you behave, not by how you start out. (Except for extreme things like wraiths, fireborns, and quetzalcoatl's.) If you mostly kill things with magic, you're a spellcaster of some sort. If with the sword, then you are a warrior. Under present rules, this would eliminate clerics and thieves! ninjas and some other classess could be regarded as mixes of spellcaster/ fighter, but..... The game needs things for thieves to do, and clerics. Hmm. I'm working on that... PeterM From crossfire-request Fri Mar 4 02:24:43 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 02:24:36 +0100 Received: by bolero.rahul.net id AA09820 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 17:24:27 -0800 Date: Thu, 3 Mar 1994 17:24:27 -0800 From: Mark Wedel Message-Id: <199403040124.AA09820@bolero.rahul.net> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: Crossedit compile errors. Status: RO I can't think of many other suggestions. IT appears the problem is in the header files -- the one with the type declarations is not being included before that sys/stat.h, which uses those declarations. You may try going into the directory where those include files are, and 'grep'ing for the various typedefs that stat.h is looking for, to see what file they are in. And then include that file also. --Mark From crossfire-request Fri Mar 4 02:22:33 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 02:22:26 +0100 Received: by bolero.rahul.net id AA09675 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 17:22:25 -0800 Date: Thu, 3 Mar 1994 17:22:25 -0800 From: Mark Wedel Message-Id: <199403040122.AA09675@bolero.rahul.net> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: Classes Status: RO But in 'reality' sense, different classes should not really have attribute bonuses. Attribute bonuses should be in the race. As such, different classes (if they don't have attribute bonuses), have no real meaning. An elf who decides to be a mage could also decide to be a fighter. The only difference would be starting equipment. Unless specific skills pertain to classes (ie, mages are better and casting spells, warriors/fighters can wear heavier armor, etc, which is more or less what AD&D does), a race and class split really doesn't do much. Moving to such a system may not be such a bad idea. However, it would require a lot of changes. --Mark From crossfire-request Fri Mar 4 02:14:53 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 02:14:49 +0100 Received: by bolero.rahul.net id AA09352 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 17:14:46 -0800 Date: Thu, 3 Mar 1994 17:14:46 -0800 From: Mark Wedel Message-Id: <199403040114.AA09352@bolero.rahul.net> To: crossfire@ifi.uio.no, quinet@montefiore.ulg.ac.be Subject: Re: Crossfire sounds file Status: RO I don't know of a good idea. If a new spell is added, what sound file to use needs to be put someplace. --Mark From crossfire-request Fri Mar 4 01:43:52 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 01:43:45 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id TAA13411; Thu, 3 Mar 1994 19:43:39 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA20707; Thu, 3 Mar 94 19:42:59 -0500 Date: Thu, 3 Mar 94 19:42:59 -0500 From: Michael Glenn Message-Id: <9403040042.AA20707@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: Re: Crossedit compile errors. Status: RO > First, you might try adding -ansi to the gcc options. > Don't know if it makes a difference, but it can't hurt. I think I tried this, but I just tried again. It gives exactly the same errors. > You might try messing around with the order of the > include files in Posix.h. I have it including > sys/types.h before sys/stat.h. Can't remember offhand > if that is how it originally is, or if I changed it to > be that way. I had already changed it to have types.h before stat.h. Not sure if I figured that out on my own or from listening to others. :) > Also, please try to keep the text of your mail less than > 75 chars, otherwise the line wrapping makes it difficult > to read (Thank you for your co-operation citizen 8-) Many apologies. I will try to remember to word wrap before sending to this group in the future. How's this posting? Thanks for the suggestions... Keep em comin'. Michael From crossfire-request Fri Mar 4 01:37:51 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 01:37:30 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA27804; Fri, 4 Mar 1994 11:37:20 +1100 Date: Fri, 4 Mar 1994 11:37:20 +1100 From: "Rupert G. Goldie" Message-Id: <199403040037.AA27804@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no Subject: Re: crossfire.... Status: RO > WORLD WIDE WEB > > An introduction to Crossfire can be obtained via WWW, > http://www.ifi.uio.no/~frankj/crossfire/ > Check it out, it is really cool ! Plus http://www.ifi.uio.no/~frankj has a gif of Frank, so you can finally see what he looks like (he also has one of the more interesting personal pages I've seen on the Web). Rupert From crossfire-request Fri Mar 4 01:34:05 1994 Return-Path: Received: from andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 01:34:02 +0100 Received: from localhost (postman@localhost) by andrew.cmu.edu (8.6.4/8.6.4) id TAA25202 for crossfire@ifi.uio.no; Thu, 3 Mar 1994 19:34:00 -0500 Received: via switchmail; Thu, 3 Mar 1994 19:34:00 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Thu, 3 Mar 1994 19:33:43 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Thu, 3 Mar 1994 19:33:28 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Thu, 3 Mar 1994 19:33:28 -0500 (EST) Message-ID: Date: Thu, 3 Mar 1994 19:33:28 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Crossfire comments In-Reply-To: References: Status: RO This should help the problem of balancing. I working on creating a fairly powerful race, and wanted to balence them by making it take a lot of experience to advance in level. Hence the following patch. As part of the patch, I've also kept notes on what I had to change to help people who follow. We might want to collect all of these notes in some sort of document. Notes and context diff follow. This difference allows you to set the variable expmul, and have the experience neccesary to advance a level be expmul*old_way(); ----------- To add a new variable expmul: Edit structs.h to add it to the appropriate structure(living) Edit loader.h to add it to the enum of variables(varnrs) Edit loader.c, add it to get_ob_diff so it will be saved, (I added save_double to loader.c) Edit set_variable to set the expmul variable Edit object.c:clear_object to set the default value for the variable -- Edit the files neccesary to make your change. For me this was: living.c:level_exp(),add_exp() libproto.h:level_exp(); map.c:calculate_difficulty(); *** common/living.c-old Thu Mar 3 17:15:47 1994 --- common/living.c Thu Mar 3 17:32:39 1994 *************** *** 838,854 **** * the given level. */ ! int level_exp(int level) { int count,required_exp; /* static int bleep=250000; */ /* Eneq(@csd.uu.se): New level-algorithm; level 2 at 1000 then times 2 for all following. */ ! if(level<=10) return levels[level]; ! for (count=10, required_exp=levels[count];count0) { ! return (int)((double)required_exp * expmul); ! } return required_exp; /* return levels[10]+bleep*(level-10); */ } *************** *** 874,880 **** if(op->stats.exp>99999999) op->stats.exp=99999999; if(op->type==PLAYER) { ! if(op->level < 100 && op->stats.exp >= level_exp(op->level+1)) { op->level++; if(op->level < 11) { --- 881,887 ---- if(op->stats.exp>99999999) op->stats.exp=99999999; if(op->type==PLAYER) { ! if(op->level < 100 && op->stats.exp >= level_exp(op->level+1,op->stats.expmul)) { op->level++; if(op->level < 11) { *************** *** 887,893 **** (*draw_info_func)(op,buf); } add_exp(op,0); /* To increase more levels */ ! } else if(op->level>1&&op->stats.explevel)) { op->level--; fix_player(op); sprintf(buf,"You are now level %d.",op->level); --- 894,900 ---- (*draw_info_func)(op,buf); } add_exp(op,0); /* To increase more levels */ ! } else if(op->level>1&&op->stats.explevel,op->stats.expmul)) { op->level--; fix_player(op); sprintf(buf,"You are now level %d.",op->level); *** common/loader.c-old Thu Mar 3 16:53:36 1994 --- common/loader.c Thu Mar 3 17:08:37 1994 *************** *** 36,42 **** /* variable_const doesn't appear to be used anyplace except in this * file. Perhaps it should be declared as a static char? */ ! char *variable_const[NR_OF_VARIABLES] = { "Object","name","race","slaying","msg","endmsg", "Inventory","arch","other_arch","More", "anim","mina","end","last_heal","last_sp","last_eat", --- 36,42 ---- /* variable_const doesn't appear to be used anyplace except in this * file. Perhaps it should be declared as a static char? */ ! static char *variable_const[NR_OF_VARIABLES] = { "Object","name","race","slaying","msg","endmsg", "Inventory","arch","other_arch","More", "anim","mina","end","last_heal","last_sp","last_eat", *************** *** 62,68 **** "attack_movement","move_state","confused","stealth","connected", "cursed","damned","see_anywhere","known_magical","known_cursed", "can_steal","been_applied","title","has_ready_rod","can_use_rod", ! "has_ready_horn","can_use_horn", #ifdef NPC_PROG "npc_status","npc_program", #endif --- 62,68 ---- "attack_movement","move_state","confused","stealth","connected", "cursed","damned","see_anywhere","known_magical","known_cursed", "can_steal","been_applied","title","has_ready_rod","can_use_rod", ! "has_ready_horn","can_use_horn","expmul", #ifdef NPC_PROG "npc_status","npc_program", #endif *************** *** 75,80 **** --- 75,88 ---- "green","light_green","grey","brown","yellow","khaki" }; + void save_double(char *buf,char *name,double v) + { + char tbuf[200]; + + sprintf(tbuf,"%s %lf\n",name,v); + strcat(buf,tbuf); + } + /* * Initialises the array of variable-names. Needed before any * objects can be loaded. Called by init_library(). *************** *** 175,180 **** --- 183,190 ---- save_long(buf,variable_const[V_MAXSP],op->stats.maxsp); if(op->stats.exp!=op2->stats.exp) save_long(buf,variable_const[V_EXP],op->stats.exp); + if(op->stats.expmul!=op2->stats.expmul) + save_double(buf,variable_const[V_EXPMUL],op->stats.expmul); if(op->stats.food!=op2->stats.food) save_long(buf,variable_const[V_FOOD],op->stats.food); if(op->stats.dam!=op2->stats.dam) *************** *** 699,704 **** --- 709,717 ---- break; case V_EXP: op->stats.exp=(signed long) value; + break; + case V_EXPMUL: + sscanf(vbp,"%lf",&op->stats.expmul); break; case V_FOOD: op->stats.food=(signed short) value; *** common/map.c-old Thu Mar 3 17:19:02 1994 --- common/map.c Thu Mar 3 17:19:20 1994 *************** *** 1286,1292 **** #ifdef NEWCALC (int)exp_pr_sq=((double)1000*total_exp)/(m->mapx*m->mapy+1); for(i=20;i>0;i--) ! if(exp_pr_sq>level_exp(i)) { diff=i; break; } --- 1286,1292 ---- #ifdef NEWCALC (int)exp_pr_sq=((double)1000*total_exp)/(m->mapx*m->mapy+1); for(i=20;i>0;i--) ! if(exp_pr_sq>level_exp(i,1.0)) { diff=i; break; } *************** *** 1294,1300 **** exp_pr_sq=((double)1000*total_exp)/(m->mapx*m->mapy+1); diff=20; for(i=1;i<20;i++) ! if(exp_pr_sq<=level_exp(i)) { diff=i; break; } --- 1294,1300 ---- exp_pr_sq=((double)1000*total_exp)/(m->mapx*m->mapy+1); diff=20; for(i=1;i<20;i++) ! if(exp_pr_sq<=level_exp(i,1.0)) { diff=i; break; } *** common/object.c-old Thu Mar 3 17:11:21 1994 --- common/object.c Thu Mar 3 17:11:03 1994 *************** *** 315,320 **** --- 315,321 ---- op->stats.luck=0; op->stats.food=0; op->stats.sp=op->stats.maxsp=op->stats.hp=op->stats.maxhp=0; + op->stats.expmul=1.0; op->direction=0; #ifdef NPC_PROG op->npc_status=0; *** include/libproto.h-old Thu Mar 3 17:16:35 1994 --- include/libproto.h Thu Mar 3 17:16:50 1994 *************** *** 167,173 **** extern int is_magical ( object *op ); extern object *is_player_inv ( object *op ); extern int legal_artifact_combination ( object *op, int table, int index ); ! extern int level_exp ( int level ); extern object *LoadObject ( FILE *fp ); extern void load_archetypes ( void ); extern int load_object ( FILE *fp, object *op ); --- 167,173 ---- extern int is_magical ( object *op ); extern object *is_player_inv ( object *op ); extern int legal_artifact_combination ( object *op, int table, int index ); ! extern int level_exp ( int level,double expmul); extern object *LoadObject ( FILE *fp ); extern void load_archetypes ( void ); extern int load_object ( FILE *fp, object *op ); *** include/loader.h-old Thu Mar 3 16:59:58 1994 --- include/loader.h Thu Mar 3 17:02:33 1994 *************** *** 53,59 **** V_ATT_MOVE,V_MOVE_STATUS,V_CONFUSED,V_STEALTH,V_CONNECTED, V_CURSED,V_DAMNED,V_SEE_ANYWHERE,V_KNOWN_MAGICAL,V_KNOWN_CURSED, V_CAN_STEAL,V_BEEN_APPLIED,V_TITLE,V_HAS_READY_ROD,V_CAN_USE_ROD, ! V_HAS_READY_HORN,V_CAN_USE_HORN, #ifdef NPCPROG V_NPC_STATUS,V_NPC_PROGRAM, #endif --- 53,59 ---- V_ATT_MOVE,V_MOVE_STATUS,V_CONFUSED,V_STEALTH,V_CONNECTED, V_CURSED,V_DAMNED,V_SEE_ANYWHERE,V_KNOWN_MAGICAL,V_KNOWN_CURSED, V_CAN_STEAL,V_BEEN_APPLIED,V_TITLE,V_HAS_READY_ROD,V_CAN_USE_ROD, ! V_HAS_READY_HORN,V_CAN_USE_HORN,V_EXPMUL, #ifdef NPCPROG V_NPC_STATUS,V_NPC_PROGRAM, #endif *** include/structs.h-old Thu Mar 3 16:39:54 1994 --- include/structs.h Thu Mar 3 16:50:30 1994 *************** *** 52,57 **** --- 52,60 ---- signed short sp; /* Spell points. Used to cast spells. */ signed short maxsp; /* Max spell points. */ signed long exp; /* Experience. Killers gain 1/10. */ + /* These two modifications will allow classes which have different + experience requirements for advancement */ + double expmul; /* needed experience = (calc_exp*expmul) */ signed short food; /* How much food in stomach. 0 = starved. */ signed char dam; /* How much damage this object does when hitting */ signed char luck; /* Affects thaco and ac from time to time */ From crossfire-request Fri Mar 4 01:03:45 1994 Return-Path: <<@vm1.ulg.ac.be:quinet@montefiore.ulg.ac.be>> Received: from vm1.ulg.ac.be by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 01:03:43 +0100 Received: from montefiore.ulg.ac.be by vm1.ulg.ac.be (IBM VM SMTP V2R2) with TCP; Fri, 04 Mar 94 01:02:21 +0100 Received: from verif1.montefiore.ulg.ac.be by montefiore.ulg.ac.be (4.1/SMI-4.1) id AA13380; Fri, 4 Mar 94 01:03:41 +0100 Date: Fri, 4 Mar 94 01:03:41 +0100 From: quinet@montefiore.ulg.ac.be (Raphael Quinet) Message-Id: <9403040003.AA13380@montefiore.ulg.ac.be> To: crossfire@ifi.uio.no Subject: Crossfire sounds file Status: RO I didn't get many answers to my question, so here it is again: Do you have any suggestions about the "sounds" file format? It's not very practical to have to change it each time a new spell is added. I'm sure that the file format could be improved. It was a quick hack at the time I wrote it. Maybe you have better ideas? BTW, if you have good sounds (*.au) that could be used with CrossFire, please tell me. -Raphael From crossfire-request Fri Mar 4 00:37:24 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 00:37:22 +0100 Received: by bolero.rahul.net id AA03698 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 15:37:16 -0800 Date: Thu, 3 Mar 1994 15:37:16 -0800 From: Mark Wedel Message-Id: <199403032337.AA03698@bolero.rahul.net> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: Crossfire comments Status: RO The changes of Peter's about classes equipping armor or weapons has made it into my copy. At least they are pretty different character classes, in terms of having certain immunities but can't use weapons/armor. The only difference between pretty much all the other character classes is starting bonuses, max value for stats, and starting equipment. Many of which can quickly dissappear (character typically don't keep their starting equipment very long, and with the raise ability potions and rings, you can almost become any class you want, given time.) Items: Using weight to figure out what and item is partially works. Some artifacts will have standard item weight if they are otherwise not magical (ie, club of Zormola). And in some cases, cursed equipment will actually be lighter and not heavier. In general, what I do, is cast detect magic on all the loot, sell all the nonmagical equipment (no point in identifying it.) Then sell all equipment that is heavier than normal (this is the cursed stuff). Then I identify the rest of the equipment (most of which is non cursed with magical pluses). It does sort of make the game into knowing how much the various stuff should weigh. However, a character should also have this knowledge. I don't know if there is good solution to this. --Mark From crossfire-request Fri Mar 4 00:32:28 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 00:32:21 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA27036; Fri, 4 Mar 1994 10:31:20 +1100 Date: Fri, 4 Mar 1994 10:31:20 +1100 From: "Rupert G. Goldie" Message-Id: <199403032331.AA27036@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: Crossedit compile errors. Status: RO > > There was a request to see what errors get reported when crossedit fails to > compile. Below is a script > of my make. I'm on a NeXT running NS 3.2, gcc 2.5.6, and the latest X11R5 > MouseX. I've tried several > variations, using the systems cc (Which is gcc 2.2.2. This reports "undefined > type" instead of "parse > error", but generally in exactly the same places.) Also by defining __POSIX > in Posix.h as someone > recommended. Any help or suggestions would be greatly appreciated. > > Michael Add #include before the #include Also, please try to keep the text of your mail less than 75 chars, otherwise the line wrapping makes it difficult to read (Thank you for your co-operation citizen 8-) Rupert From crossfire-request Fri Mar 4 00:29:59 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 00:29:56 +0100 Received: by bolero.rahul.net id AA03309 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 15:29:53 -0800 Date: Thu, 3 Mar 1994 15:29:53 -0800 From: Mark Wedel Message-Id: <199403032329.AA03309@bolero.rahul.net> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: Crossedit compile errors. Status: RO First, you might try adding -ansi to the gcc options. Don't know if it makes a difference, but it can't hurt. You might try messing around with the order of the include files in Posix.h. I have it including sys/types.h before sys/stat.h. Can't remember offhand if that is how it originally is, or if I changed it to be that way. --Mark From crossfire-request Fri Mar 4 00:21:16 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 00:21:11 +0100 Received: by bolero.rahul.net id AA02805 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 15:20:54 -0800 Date: Thu, 3 Mar 1994 15:20:54 -0800 From: Mark Wedel Message-Id: <199403032320.AA02805@bolero.rahul.net> To: btk@aber.ac.uk, crossfire@ifi.uio.no Subject: Re: New players and cursed items?? Status: RO You should be able to save a character with original equipment and not loose it. I haven't started a new character for a while, so haven't noticed if new characters loose their equipment. I'll look into it. --Mark From crossfire-request Fri Mar 4 00:14:29 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Fri, 4 Mar 1994 00:14:27 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id PAA22954; Thu, 3 Mar 1994 15:14:23 -0800 Date: Thu, 3 Mar 1994 15:14:23 -0800 From: Peter Mardahl Message-Id: <199403032314.PAA22954@soda.berkeley.edu> To: bjornlu@ifi.uio.no, crossfire@ifi.uio.no Subject: Re: FAQ? Status: RO Hey, do I see a volunteer? From: bjornlu To: crossfire@ifi.uio.no Subject: FAQ? Sooo, WHY don't we have a FAQ? Like, really? Did I miss something? From crossfire-request Thu Mar 3 23:55:18 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 23:55:17 +0100 From: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= MIME-Version: 1.0 Received: from localhost by holmenkollen.ifi.uio.no ; Thu, 3 Mar 1994 23:55:16 +0100 Date: Thu, 3 Mar 1994 23:55:15 +0100 To: crossfire@ifi.uio.no Subject: FAQ? Message-ID: Status: RO Sooo, WHY don't we have a FAQ? Like, really? Did I miss something? From crossfire-request Thu Mar 3 22:29:33 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 22:29:29 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA11537; Thu, 3 Mar 1994 13:29:25 -0800 Date: Thu, 3 Mar 1994 13:29:25 -0800 From: Peter Mardahl Message-Id: <199403032129.NAA11537@soda.berkeley.edu> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: Crossfire comments Status: RO fireborns, wraiths, quetzalcoatls' ARE legitimate character classes on tvangod's server. (chico) they are the first non-human characters, and they need balancing. I modified apply.c so that it checked to see if a character CAN_USE_ARMOR before applying helm, shield, armor, and CAN_USE_WEAPON before applying weapon or helm. Fireborns and quetzalcoatl's CANNOT use weapons or armour. At least, they can't in my version of the code. I sincerely hope this hack made it into the new server, and that the modifications I made to the other player archetypes (CAN_USE_ARMOR 1 CAN_USE_WEAPON 1) are in the new archetype distribution. fireborns and quetzal's are immune to fireee, wraiths are immune to cold. These are partial compensation for the lack of hte ability to wield weapons or waer armor. These players also have other weaknesses. They are new, and partially experimental, so feel free to comment to me on them. Regards, PeterM From crossfire-request Thu Mar 3 22:13:31 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 22:13:26 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA09549; Thu, 3 Mar 1994 13:13:03 -0800 Date: Thu, 3 Mar 1994 13:13:03 -0800 From: Peter Mardahl Message-Id: <199403032113.NAA09549@soda.berkeley.edu> To: crossfire@ifi.uio.no, master@rahul.net, roy@eckerd.edu Subject: Re: Making maps for new versions? Status: RO I have had no problem using crossedit 0.7 with any of the chico or soda archetypes for making maps. The crashes of crossedit seem to have little to do with archetypes, but rather with bugs in the program. They're repeatable. PeterM From crossfire-request Thu Mar 3 19:40:21 1994 Return-Path: Received: from po6.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 19:40:19 +0100 Received: from localhost (postman@localhost) by po6.andrew.cmu.edu (8.6.4/8.6.4) id NAA05726 for crossfire@ifi.uio.no; Thu, 3 Mar 1994 13:40:07 -0500 Received: via switchmail; Thu, 3 Mar 1994 13:40:06 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Thu, 3 Mar 1994 13:39:14 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Thu, 3 Mar 1994 13:39:12 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Thu, 3 Mar 1994 13:39:10 -0500 (EST) Message-ID: Date: Thu, 3 Mar 1994 13:39:10 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Crossfire comments Status: RO I'm really impressed with the current setup, it's pretty neat. I got the maps from the chico server; they are much nicer than the original set of maps distributed with crossfire. The one interesting thing I've had happen is that every so often, the game will let me become a wraith, fireborn or quetzocoatl as a character class. It's not clear to me if this is intended or not, so I figured I'd ask. I think it would be neat to be able to play non-humans, but you'd need to define what it means to wear armour/wield weapons in this case. -- Second, it was pointed out to me that you can identify cursed/enchanted items by their weight. You can't identify all of them, but it appears to be a safe bet that if an item weighs less than a normal one then it is enchanted and "good". -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Thu Mar 3 18:28:27 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 18:28:24 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id MAA15536; Thu, 3 Mar 1994 12:28:15 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA20075; Thu, 3 Mar 94 12:27:36 -0500 Date: Thu, 3 Mar 94 12:27:36 -0500 From: Michael Glenn Message-Id: <9403031727.AA20075@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: Crossedit compile errors. Status: RO There was a request to see what errors get reported when crossedit fails to compile. Below is a script of my make. I'm on a NeXT running NS 3.2, gcc 2.5.6, and the latest X11R5 MouseX. I've tried several variations, using the systems cc (Which is gcc 2.2.2. This reports "undefined type" instead of "parse error", but generally in exactly the same places.) Also by defining __POSIX in Posix.h as someone recommended. Any help or suggestions would be greatly appreciated. Michael ------------- Begin script -------------- make[1]: Entering directory `/Internal/stuff/crossfire/crossfire-0.90.1/crossedit/Cnv' gcc -DNeXT -DBSD -DMACH -O2 -I. -I../include -I../../include -DX_NOT_POSIX -DX_NOT_STDC_ENV -DX_LOCALE -DLONGJUMP -DStupidSunHeaders -DXpm_Pix -DFUNCPROTO=7 -DNARROWPROTO -DFONTDIR=\"/games/lib/crossfiredir/fonts\" -DFONTNAME=\"crossfire\" -DLIBDIR=\"/games/lib/crossfiredir\" -DCOMPRESS=\"/usr/local/bin/gzip\" -DUNCOMPRESS=\"/usr/local/bin/gunzip\" -DCOMPRESS_SUFFIX=\".gz\" -c test.c -o test.o In file included from ../include/Posix.h:23, from Cnv.h:27, from test.c:1: /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:76: parse error before `mode_t' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:76: warning: no semicolon at end of struct or union /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:78: warning: data definition has no type or storage class /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:99: parse error before `}' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:219: parse error before `mode_t' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:220: parse error before `mode_t' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:221: parse error before `mode_t' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:222: parse error before `umask' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:222: parse error before `cmask' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/stat.h:222: warning: data definition has no type or storage class In file included from /NextDeveloper/Headers/bsd/dirent.h:12, from ../include/Posix.h:29, from Cnv.h:27, from test.c:1: /NextDeveloper/Headers/bsd/sys/dirent.h:60: `NAME_MAX' undeclared here (not in a function) /NextDeveloper/Headers/bsd/sys/dirent.h:60: size of array `d_name' has non-integer type In file included from /NextDeveloper/Headers/bsd/fcntl.h:1, from ../include/Posix.h:33, from Cnv.h:27, from test.c:1: /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/fcntl.h:161: parse error before `pid_t' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/fcntl.h:161: warning: no semicolon at end of struct or union /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/fcntl.h:167: parse error before `}' /usr/local/lib/gcc-lib/next-mach3.2/2.5.6/include/bsd/sys/fcntl.h:171: parse error before `mode_t' From crossfire-request Fri Mar 4 04:29:08 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 04:29:07 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA05418; Thu, 3 Mar 1994 22:26:16 +0500 Date: Thu, 3 Mar 1994 22:26:16 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403040326.AA05418@acasun.eckerd.edu> To: peterm@soda.berkeley.edu Subject: Re: my TODO list--volunteers? Cc: crossfire@ifi.uio.no Content-Length: 743 Status: RO I'd like to see some sort of "arrow of returning". Ie: You only need one.. As soon as it stops moving, it returns to your inventory.. If you have 2-3, you can just just fire alot. :D Perhaps an Energy Bow, or something, like the old AD&D cartoon? Like, perhaps, a Bow that fires Large Bullets. Needs no ammo... But maybe it has to 'recharge' some, like a rod? I love the idea of weapons/items that never run out of a spell, but need to recharge their own spell points. (It'd be neat if spell point regen was non-linear. If it's really drained, it recharges slower. If it's only used once, it recharges will quick... Thus, you'd use a rod of large fireball now and then, instead of as much as you can, as often as you can...) Opinions? From crossfire-request Fri Mar 4 01:44:57 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 01:44:54 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA02307; Thu, 3 Mar 1994 19:41:44 +0500 Date: Thu, 3 Mar 1994 19:41:44 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403040041.AA02307@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Classes Content-Length: 357 Status: RO It'd be nice if your class/race was seperate.. Part of character creation, you choose a race (With a chart shown of all the mods to the stats the races make) and then choose a class... Sort of a more real AD&D type setup. Is there any interest in moving to a skill based set, ala Rolemaster or DikuMud? That could be neat... (JUst some suggestions. :) ) From crossfire-request Thu Mar 3 09:05:11 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 09:05:09 +0100 Received: by bolero.rahul.net id AA15511 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 00:05:05 -0800 Date: Thu, 3 Mar 1994 00:05:05 -0800 From: Mark Wedel Message-Id: <199403030805.AA15511@bolero.rahul.net> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: Making maps for new versions? Status: RO crossedit 0.7 should work fine for making maps. I would suggest not using the newer archetype file, and only use the one that came with crossedit 0.7. There is a decent likelihood that there might be some new archetypes that crossedit 0.7 could not hand. Regarding crossedit: I've seen several mentions that the compiled failed miserable, but very few actual details of the problems. It compiles just fine for me (gcc, sunos 4.1.1), so unless I get actual details of the problem (ie, what your compiler spits out), these problems are not likely to be fixed. --Mark From crossfire-request Thu Mar 3 01:24:27 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 01:24:18 +0100 Received: by bolero.rahul.net id AA18336 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Wed, 2 Mar 1994 16:24:10 -0800 Date: Wed, 2 Mar 1994 16:24:10 -0800 From: Mark Wedel Message-Id: <199403030024.AA18336@bolero.rahul.net> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: New players and cursed items?? Status: RO That has been fixed. In the new version, players start with uncursed and identified items. --Mark From crossfire-request Thu Mar 3 00:58:14 1994 Return-Path: <<@vm1.ulg.ac.be:quinet@montefiore.ulg.ac.be>> Received: from vm1.ulg.ac.be by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 3 Mar 1994 00:58:13 +0100 Received: from montefiore.ulg.ac.be by vm1.ulg.ac.be (IBM VM SMTP V2R2) with TCP; Thu, 03 Mar 94 00:56:50 +0100 Received: from verif1.montefiore.ulg.ac.be by montefiore.ulg.ac.be (4.1/SMI-4.1) id AA03674; Thu, 3 Mar 94 00:58:00 +0100 Date: Thu, 3 Mar 94 00:58:00 +0100 From: quinet@montefiore.ulg.ac.be (Raphael Quinet) Message-Id: <9403022358.AA03674@montefiore.ulg.ac.be> To: crossfire@ifi.uio.no, eneq@csd.uu.se Subject: Re: Xpm and rplay[d]. Status: RO [Notice: while writing a first version of this message, my station crashed. :( So if you got a message from me before this one, it is probably incomplete. Just ignore it.] > From: Rickard Eneqvist > I have a few problems with the above mentioned additions to Crossfire. > (2) Rplay[d] > For some reason I can't get Crossfire to play the defined sounds > and I have the rplayd up and running. Do I have to pass a special > option to Crossfire on startup (cant find one) or? I have played > sounds using rplay so there is no error in that setup. > I wrote the rplay stuff for CrossFire. Lots of things have changed since 0.89.2, so some of the sounds definitions are useless now. But most of them still work. I'm running 0.90.1 and I can hear most of the sounds. Did you create a LIBDIR/sounds file? If I have the time, I will improve the sound support in CrossFire. One thing that should be changed is the format of the "sounds" file. It's really annoying to have to change it each time a new spell is added. I'm waiting for your suggestions... What can be done to improve this? -Raphael From crossfire-request Fri Mar 4 21:27:15 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 21:27:13 +0100 Received: from localhost (haatanen@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id WAA25614; Fri, 4 Mar 1994 22:27:12 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403042027.WAA25614@cc.lut.fi> Subject: Re: Crossfire comments To: crossfire@ifi.uio.no Date: Fri, 4 Mar 1994 22:27:12 +0200 (EET) In-Reply-To: <199403040527.VAA07087@soda.berkeley.edu> from "Peter Mardahl" at Mar 3, 94 09:27:38 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 1481 Status: RO From: Peter Mardahl > Identify has made it very unfortunate to be a low level character. > It has become very difficult to obtain enough money to improve > your equipment or spell knowledge. Too hard. I don't think that's too hard (Only played low level characters lately :( ) I think that Mark's solution is good, so you can buy identify/per object. About weights on unidentified objects. I don't see any reason why players need to know the exact weight of objects. Examine command could tell if objects feels heavy, very heavy etc. If object is identified then it shows exact weight. Only where you need need to know your weight is with buttons and trapdoors, and even there isn't very important. Giving every class it's own special abilities is good idea, but I hope that these wouldn't be too restrictive. A few idea's that comes to mind. Thief: could examine buttons and trapdoor and find out how much weight activates them. And could lockpick normal doors. Warrior:Could identify some weapons or armors. Mages: More likely succees with spellcasting, more effective spells. Cleric: Better with healing. [about expmul-patch: Great idea, but wouldn't that be better be in player struct, since it affects only players, and living struct is every object (adds quite much memory usage when many maps are loaded). Like addind exp field player archetype to tell how much is needed first level and using that count value expmul-varibale.] -Tero From crossfire-request Fri Mar 4 21:29:37 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 21:29:31 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA20236; Fri, 4 Mar 1994 15:26:14 +0500 Date: Fri, 4 Mar 1994 15:26:14 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403042026.AA20236@acasun.eckerd.edu> To: Matt.Cohen@chron.com, crossfire@ifi.uio.no Subject: Re: Crossfire comments Content-Length: 228 Status: RO Omega was _very_ cool. :) What I liked the most were the various gods in the game, each with their own spells for their followers, and such... (THey got upset if you sacrificed to other gods, and so on...) That was nice. :) From crossfire-request Fri Mar 4 08:17:00 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 08:16:55 +0100 Received: by bolero.rahul.net id AA28366 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 23:19:28 -0800 Date: Thu, 3 Mar 1994 23:19:28 -0800 From: Mark Wedel Message-Id: <199403040719.AA28366@bolero.rahul.net> To: crossfire@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: coding advice please Status: RO One thought about making runes visible/invisible would be to do something like invisible stalkers - have several animation phases, some which are the rune, and others which are blank. However, this allows rough approximations (ie, once very 1, 2, 3, 4, etc animations it is visible. OR 2 every ... and so on.) I also am not sure how the animation code works - whether it can be updated after loading, or whether how the archetype has it, that is it. As for runes, as I understand it, autoapply means the object is applied the instant it is created (in this way, you can have chests that open as the map is loaded, if you want to use that treasure table.) However, I don't see any reason why runes can not act as buttons and similar devices - when someone steps on it, it then executes the rune_explosion code or whatver. Just as if you step on a button, it calls the button toggle function. --Mark From crossfire-request Fri Mar 4 17:55:26 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 17:55:24 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA14897; Fri, 4 Mar 1994 11:52:16 +0500 Date: Fri, 4 Mar 1994 11:52:16 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403041652.AA14897@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Freidnly... Content-Length: 232 Status: RO A possible way to promote freidnlyness beteen players is is to penalize your EXP for killing a PC... Sort of like befor,e when you'd get alot of EXP for killng a high level PC, you'd lose it instead.... (Just a gueestions. :) ) From crossfire-request Fri Mar 4 06:59:26 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:59:24 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id WAA10550 for crossfire@ifi.uio.no; Thu, 3 Mar 1994 22:01:05 -0800 Date: Thu, 3 Mar 1994 22:01:05 -0800 From: Peter Mardahl Message-Id: <199403040601.WAA10550@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: coding advice please Status: RO About my rune code. I really feel it is done is somewhat non-optimally. Right now, the rune checks the square it is in every time it moves (speed 1) to check and see if someone or something is stepping on it. It also uses it's move to decide whether it is going to be visible this turn or not. Runes right now 'blink' on and off according to their charisma, at random. They are visible 2/charisma of the time, at random. This was the best I could think of to conceal them without making them totally invisible. This could make runes a bit more expensive than we really want them to be. I've thought about using autoapply on runes, but I'm not sure if that works for monsters--monsters must also detonate runes if they step on one. Can someone who knows a little about autoapply advise me a bit? I'd rather not hack the code to figure it out! Also, I'd welcome some suggestions on how to improve the rune mover. It isn't TOO bad right now. It only checks to see if there's anything in the square, so it is not as expensive as a monster. I don't think efficiency is too crucial, since no one would use too many runes most likely anyway (monsters step on them quicker than people generally will if you use them indiscriminately.) Should I worry about this or continue on with other projects and worry about efficiency later, or do other experienced coders feel this is good enough anyway? Regards, PeterM From crossfire-request Fri Mar 4 06:51:29 1994 Return-Path: Received: from po5.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:51:26 +0100 Received: from localhost (postman@localhost) by po5.andrew.cmu.edu (8.6.4/8.6.4) id AAA21317 for crossfire@ifi.uio.no; Fri, 4 Mar 1994 00:53:03 -0500 Received: via switchmail; Fri, 4 Mar 1994 00:53:02 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Fri, 4 Mar 1994 00:51:20 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Fri, 4 Mar 1994 00:51:12 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Fri, 4 Mar 1994 00:51:11 -0500 (EST) Message-ID: Date: Fri, 4 Mar 1994 00:51:11 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Classes In-Reply-To: <199403040122.AA09675@bolero.rahul.net> References: <199403040122.AA09675@bolero.rahul.net> Status: RO Mark Wedel writes: > But in 'reality' sense, different classes should not really have > attribute bonuses. Attribute bonuses should be in the race. You could argue they were training focuses. Different classes worked on different skills during apprenticeship -- hence different stats. > Moving to such a system may not be such a bad idea. However, it would > require a lot of changes. Personall,I would like such a system. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Fri Mar 4 06:49:10 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:49:07 +0100 Received: by bolero.rahul.net id AA24136 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 21:50:43 -0800 Date: Thu, 3 Mar 1994 21:50:43 -0800 From: Mark Wedel Message-Id: <199403040550.AA24136@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: Next version. Status: RO Crossfire 0.90.2 will likely be released Sunday. An official anouncement should go out over the crossfire-announce list. As such, a few comments: 1) Please hold off on submitting feature patches to me. Wait until the new version, and supply me with a diff to that. Three main areas have changed: input, spells, and flag handling. Also, I want to keep with what I have right now so I can test it out and make sure it seems at least partially stable, and not be messing with adding new features and making sure they work. 2) If you have a patch that actually prevents/fixes core dumps, I will take those. 3) Some people were working on coloring/fixing up the XPM files. IF you want those to be in the next version, please send them to me. --Mark From crossfire-request Fri Mar 4 06:31:46 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:31:40 +0100 Received: by bolero.rahul.net id AA23271 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 3 Mar 1994 21:32:59 -0800 Date: Thu, 3 Mar 1994 21:32:59 -0800 From: Mark Wedel Message-Id: <199403040532.AA23271@bolero.rahul.net> To: crossfire@ifi.uio.no, master@rahul.net, rgg@aaii.oz.au, roy@eckerd.edu Subject: Re: Classes Status: RO But my point was, race should determine attribute bonuses or penalties. Thus, if some race is very strong, it would make a good fighter. If another race is very wise, a good cleric, etc. Getting rid of attribute bonuses for classes should only happen if class and race is separated. Then, you choose a race that will be good for that class. But once you choose 'human', whether you are a fighter, mage, or cleric, really should not make any difference on attribute scores or maximums. The attribute scores and maximums should be based on race. (Obviously, if you choose to be a cleric, and have SWAP_STATS enabled, you will likely put a high stat on wisdom and intelligence.) My point is that if this was to happen right now, then what class you choose would only have relevance to your starting items. Your attribute maximums and bonuses would be determined by race. Under such a situation, classes then are non important, because classes have no unique skills or abilities other than starting equipment. However, I don't know how good strict class limitations are. For example, in AD&D, a straight mage probably won't survive his first battle (lack of hp, armor, and offensive capability). It is the party he is with, which typically contains a good mix, which will let him survive. In crossfire, you might not have a party. So with class restrictions, that character might never survive. Right now, there are some situations, with certain monsters being immune to magic, and others immune to physical. If that barbarian comes up to an immune to physical creature, he better hope he has a wand or horn that will do something, or he needs to run away. Likewise, a spellcaster that runs into somethign immune to physical will have a tough time. If more restrictions were put on (ie, mages can't wear armor, and barbarians can't use wands/staves/rods), there would be many hopeless situations. As such, I'm not sure if real strong restrictions would be a good idea. Especially since I think many people play it more as a single user type game. --Mark From crossfire-request Fri Mar 4 06:26:26 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:26:24 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id VAA07087; Thu, 3 Mar 1994 21:27:38 -0800 Date: Thu, 3 Mar 1994 21:27:38 -0800 From: Peter Mardahl Message-Id: <199403040527.VAA07087@soda.berkeley.edu> To: crossfire@ifi.uio.no, eanders+@CMU.EDU, master@rahul.net, rgg@aaii.oz.au Subject: Re: Crossfire comments Status: RO Identify has made it very unfortunate to be a low level character. It has become very difficult to obtain enough money to improve your equipment or spell knowledge. Too hard. Some provision should be made so that a) you can purchase identifications somehow, FOR A SET PRICE, instead of having to buy scrolls. b) "prayers" by low level characters will cause identification sometimes, with the gods using an increasingly 'laissez faire' attitude as you advance or c) players can sometimes, though very inefficiently, identify stuff for themselves. SOmeone clue me in please, if one of these things is already done. Regards, PeterM From crossfire-request Fri Mar 4 06:06:12 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 06:06:09 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id VAA05303; Thu, 3 Mar 1994 21:07:07 -0800 Date: Thu, 3 Mar 1994 21:07:07 -0800 From: Peter Mardahl Message-Id: <199403040507.VAA05303@soda.berkeley.edu> To: peterm@soda.berkeley.edu, roy@eckerd.edu Subject: Re: my TODO list--volunteers? Cc: crossfire@ifi.uio.no Status: RO I think that horns and anything that has an infinite supply of spells are bad, UNLESS it has severe limitations on how often it can be used. or UNLESS it has the chance of going off on it's own at inconvenient moments! Seriously, palying in DM mode one time, I found a horn of frostbolt. The thing was practically an infinite supply of the spell. I could fire every 2 seconds or so, and if I let it be idle, it would accumulate a lot of firepower in very short order. Soon as I get 'round to it, I'm going to put severe limitations on what these horns can do..... Unless there seems to be a consensus against me putting restrictions on them. roy@eckerd.edu's suggestion of making it non linear is a very, very good one, and it would not be hard to do, even with only integer math! That way, the horn could blast a lot when you really needed and could be used occasionally elsewise. Regards, PeterM From crossfire-request Fri Mar 4 05:50:13 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 05:50:07 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA00234; Fri, 4 Mar 1994 15:50:58 +1100 Date: Fri, 4 Mar 1994 15:50:58 +1100 From: "Rupert G. Goldie" Message-Id: <199403040450.AA00234@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: proposed new 'range attack': disarm Status: RO > It occurs to me that there is NO reason, none at all, that the rune > code could not be used for NON magical traps! You set the damage type to > physical, and don't put in a spell, give the 'rune' an appropriate face, > and there you are, a non-magical trap. It is eminently possible to make > pits, mousetraps, dart shooters (would require spell coding if you wanted > darts to appear in inventory). Hell, even the message is readily definable. > "you set off a dart trap". > > I'd have to change the rune code around a little bit, but I could do this > very easily. > This would be cool. At the moment to make traps you need to fiddle around with hiding buttons that are connected to doors covering active walls etc, so generalising your rune code would be great (I am looking forward to seeing the rune code anyway) Rupert From crossfire-request Fri Mar 4 05:47:53 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 05:46:57 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA00187; Fri, 4 Mar 1994 15:46:44 +1100 Date: Fri, 4 Mar 1994 15:46:44 +1100 From: "Rupert G. Goldie" Message-Id: <199403040446.AA00187@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, roy@eckerd.edu, master@rahul.net Subject: Re: Classes Status: RO > But in 'reality' sense, different classes should not really have > attribute bonuses. Attribute bonuses should be in the race. Giving classes attribute bonuses makes it easier to make characters. For instance, mages need to have high intelligence, so by giving them a bonus it becomes a little easier to roll up a decent mage. There is also the fact that the bonus affects the maximum for an attribute, so a mage with max int is going to be smarter than a barbarian with max int - that seems right to me. Rupert From crossfire-request Fri Mar 4 15:10:09 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 15:10:07 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA08853; Fri, 4 Mar 1994 08:35:32 +0500 Date: Fri, 4 Mar 1994 08:35:32 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403041335.AA08853@acasun.eckerd.edu> To: crossfire@ifi.uio.no, master@rahul.net, rgg@aaii.oz.au, roy@eckerd.edu Subject: Re: Classes Content-Length: 425 Status: RO Someone mentioned a theif class, and what the point would be... If you have possible auto-identify, let the player click on an item with the left mouse button. There would be a chance, based on level/class/int/wis of indentifiing it.. Wizards have better chances at wands, priests at other items of some sort, and thiefs at things like weapons... (shrug) I just suggest things. :) Not saying any of this is good or bad... From crossfire-request Fri Mar 4 14:34:16 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 14:34:14 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA08696; Fri, 4 Mar 1994 08:31:05 +0500 Date: Fri, 4 Mar 1994 08:31:05 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403041331.AA08696@acasun.eckerd.edu> To: crossfire@ifi.uio.no, master@rahul.net, rgg@aaii.oz.au, roy@eckerd.edu Subject: Re: Classes Content-Length: 125 Status: RO Well, if you want to play a mage, you'd choose a race like an Elf or Gnome.. You wouldn't choose a Dwarf or Barbarian. :) From crossfire-request Sat Mar 5 07:14:32 1994 Return-Path: Received: from po5.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 07:14:29 +0100 Received: from localhost (postman@localhost) by po5.andrew.cmu.edu (8.6.4/8.6.4) id BAA16819 for crossfire@ifi.uio.no; Sat, 5 Mar 1994 01:14:23 -0500 Received: via switchmail; Sat, 5 Mar 1994 01:14:22 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sat, 5 Mar 1994 01:13:35 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sat, 5 Mar 1994 01:13:25 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Sat, 5 Mar 1994 01:13:25 -0500 (EST) Message-ID: Date: Sat, 5 Mar 1994 01:13:25 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Crossfire comments In-Reply-To: <199403042027.WAA25614@cc.lut.fi> References: <199403042027.WAA25614@cc.lut.fi> Status: RO Tero Haatanen writes: > [about expmul-patch: Great idea, but wouldn't that be better be in > player struct, since it affects only players, and living struct is > every object (adds quite much memory usage when many maps are loaded). > Like addind exp field player archetype to tell how much is needed first > level and using that count value expmul-varibale.] Yea, when I redo the patch .vs. 90.2, I'll move it to the player struct. I put it in stats because that's where exp was. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Sat Mar 5 06:00:21 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 06:00:19 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id VAA02930 for crossfire@ifi.uio.no; Fri, 4 Mar 1994 21:00:07 -0800 Date: Fri, 4 Mar 1994 21:00:07 -0800 From: Peter Mardahl Message-Id: <199403050500.VAA02930@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: found this while looking at the artifacts file Status: RO Allowed plate_mail Object Power type 16 value 150 magic 4 Str 1 vulnerable 4 weight 200 exp -1 armour 13 ac 1 msg This extremely unique platemail was made for the line of dwarven kings in one of the ancient northern kingdoms from which nothing has been heard of during the latter centuries. Due to magic, it will fit creatures of any size. It is highly enchanted, increasing the strength of the wearer and protecting against fire. Unfortunately it is also very heavy, limiting speed somewhat. endmsg end vulnerable 4 is fire.....? PeterM From crossfire-request Sat Mar 5 05:54:07 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 05:54:05 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id UAA02382 for crossfire@ifi.uio.no; Fri, 4 Mar 1994 20:54:01 -0800 Date: Fri, 4 Mar 1994 20:54:01 -0800 From: Peter Mardahl Message-Id: <199403050454.UAA02382@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: armour and spells Status: RO doesn't make much sense to me that armour impedes spellpoint regeneration, even leather.... how about making them cause spells to fail more often instead? PeterM From crossfire-request Sat Mar 5 04:54:56 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 04:54:52 +0100 Received: by bolero.rahul.net id AA29171 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 4 Mar 1994 19:54:49 -0800 Date: Fri, 4 Mar 1994 19:54:49 -0800 From: Mark Wedel Message-Id: <199403050354.AA29171@bolero.rahul.net> To: crossfire@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: traps Status: RO True, the rune_explosion function will only be called when someone walks on or walks off. However, once someone does walk on, then you could change somethign in the object so it gets recognized by the normal object searching routine, and thus keep exploading. In this way, the object does not need to be searched through each time like all the rest of the objects. This may not be a very big deal right now, but if the objects get split into 'static' objects and non static objects (static objects being those that don't change, non static being those that have animations), then trying to minimize the list of non-static objects would be a good thing. --Mark From crossfire-request Sat Mar 5 04:50:35 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 04:50:32 +0100 Received: by bolero.rahul.net id AA28988 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 4 Mar 1994 19:50:30 -0800 Date: Fri, 4 Mar 1994 19:50:30 -0800 From: Mark Wedel Message-Id: <199403050350.AA28988@bolero.rahul.net> To: roy@eckerd.edu Subject: XPM Colors Cc: crossfire@ifi.uio.no Status: RO HEre is an xpm file that has the legal colors. To use this file, just save it someplace, and then when you run pixmap, load this file first, and it will then allocate all these colors along the top to choose from. --cut here-- /* XPM */ static char *template[] = { "24 24 29 1", " c None s Transparent", ". c Black", "X s Dark gray c Grey25", "o s Gray c Grey50", "O s Light gray c Grey75", "+ c White", "@ s Dark red c Firebrick", "# c Red", "$ s Light red c Salmon", "% s Dark green c SeaGreen", "a c Green", "b s Light green c PaleGreen", "c s Dark blue c Navy", "d c Blue", "e s Light blue c DodgerBlue", "f c Goldenrod s Dark yellow", "g s Yellow c Gold", "h s Light yellow c Yellow", "i s Dark magenta c Maroon", "j c Magenta", "k s Light magenta c Pink", "l s Dark cyan c Cyan4", "m s Cyan c Cyan2", "n s Light Cyan c Cyan", "o s Dark orange c Chocolate", "p c Orange", "q s Dark brown c Sienna", "r s Brown c Peru", "s s Light brown c Khaki", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " "}; --cut here --Mark From crossfire-request Sat Mar 5 03:28:21 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 03:28:19 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id SAA19714 for crossfire@ifi.uio.no; Fri, 4 Mar 1994 18:28:10 -0800 Date: Fri, 4 Mar 1994 18:28:10 -0800 From: Peter Mardahl Message-Id: <199403050228.SAA19714@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: traps Status: RO The rune code will already support traps quite nicely. All that is lacking are faces and archetypes for them. Some ideas: blades, poison needles, darts, arrows, mousetraps, beartraps, stakes..... Is anyone interested in starting those things? I will email you documentation on runes and some example archetypes. I've decided against changing the implementation of runes right now. One thing that runes will do, that I think is good, is that if you step on a rune, it will KEEP DETONATING until it's exhausted its 'charges', or until whatever is on it has stepped off. Correct me if I'm wrong, but if I go to the WALK_ON flag, it will only detonate when someone moves onto it, but will not keep detonating each move until they get off? PeterM From crossfire-request Sat Mar 5 00:54:22 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 00:54:19 +0100 Received: by bolero.rahul.net id AA13511 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 4 Mar 1994 15:54:14 -0800 Date: Fri, 4 Mar 1994 15:54:14 -0800 From: Mark Wedel Message-Id: <199403042354.AA13511@bolero.rahul.net> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: Bitmaps Status: RO The new method for nice looking pixmaps is with the XPM files. There are about 30 agreed upon colors taht can be used (this number is limited so that the colormap is not overwhelmed.) The best program to make these is the 'pixmap' program. They do of course, have to be 24x24. --Mark From crossfire-request Sat Mar 5 00:43:42 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 00:43:38 +0100 Received: by bolero.rahul.net id AA12970 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 4 Mar 1994 15:43:24 -0800 Date: Fri, 4 Mar 1994 15:43:24 -0800 From: Mark Wedel Message-Id: <199403042343.AA12970@bolero.rahul.net> To: Tero.Haatanen@lut.fi, crossfire@ifi.uio.no Subject: Re: Arrows Status: RO But perhaps arrows of small fireball might not be too unreasonable. Not any more unreasonable than a wand, as long as chance of finding them and their cost are comparable.. --Mark From crossfire-request Fri Mar 4 21:47:27 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 21:47:25 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id PAA29864; Fri, 4 Mar 1994 15:47:23 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA23976; Fri, 4 Mar 94 15:46:43 -0500 Date: Fri, 4 Mar 94 15:46:43 -0500 From: Michael Glenn Message-Id: <9403042046.AA23976@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: To get Crossedit to work on a Next: Status: RO Ok, pretty simple. Here is what I did: 1) Move Posix.h in crossedit/Cnv/Cnv.h to be the first file included. 2) Include Posix.h in crossedit/Cnv/CnvPrompt.c. (first file included) 3) Use cc and not gcc. Apparently gcc uses its own limits.h, which does not define NAME_MAX. 4) Change "struct dirent" to "struct direct" in crossedit/Cnv/CnvFiles.c and CnvPath.c. For some reason, with struct dirent, many file names lose their first 4 letters. libCnv.a should now compile in crossedit/Cnv. 5) Add Posix.h (always as the first file included) to every .c file in crossedit. crossedit should now compile in crossedit. 6) Make sure all map files are uncompressed. Either crossedit doesn't handle compressed maps yet, or something goes wrong... After this, everything seems to fly. Yay!!!! :) Michael From crossfire-request Fri Mar 4 20:20:01 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 20:19:58 +0100 Received: from localhost (haatanen@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id VAA23496; Fri, 4 Mar 1994 21:19:57 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403041919.VAA23496@cc.lut.fi> Subject: Arrows To: crossfire@ifi.uio.no Date: Fri, 4 Mar 1994 21:19:57 +0200 (EET) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 610 Status: RO From: Peter Mardahl > arrows of slaying -- These need to go into the game! > As it is, all arrows are alike, this sucks. +2, +3 arrows! > Dragon slaying arrows! So i'm not only one, I already started coding these :). They need still some coding, but they works already some how, When/If I get them ready I send patches to Mark. > arrows of lighting/fireball.... Like casting the spell! Wouldn't > these be awesome? Probably little too awesome :) Nothing wrong arrows which do fire/lighning damage, like some artifact (firebrand), but fireball is too much, IMHO. -Tero From crossfire-request Fri Mar 4 19:18:51 1994 Return-Path: Received: from houston.chron.com by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 19:18:48 +0100 Received: from relay.chron.com by houston.chron.com with SMTP id AA20341 (5.65c/IDA-1.4.4 for ); Fri, 4 Mar 1994 12:18:43 -0600 Received: from magic706.chron.com by relay.chron.com (4.1/SMI-4.1) id AA23744; Fri, 4 Mar 94 12:18:45 CST Received: by magic706.chron.com (4.1/SMI-4.1) id AA18627; Fri, 4 Mar 94 12:18:46 CST Date: Fri, 4 Mar 94 12:18:46 CST From: Matt.Cohen@chron.com (Matt Cohen) Message-Id: <9403041818.AA18627@magic706.chron.com> To: crossfire@ifi.uio.no Subject: Re: Crossfire comments Status: RO > > It does sort of make the game into knowing how much the various stuff > > should weigh. However, a character should also have this knowledge. > > I don't know if there is good solution to this. > > > > --Mark > Two possible solutions: > 1) + or - doesn't affect weight so you get no info at all. > 2) make cursed items lighter as well, so a +2 sword weighs the same as a -2 > sword. ` Another possibility: An unidentified item weighs the same as a nonmagical item. When a magical item is wielded or identified, it "activates" and drops in weight. This could probably be put into the identify/wielding code. It might also be an interesting idea to put in nonmagical versions of magic items (or magical but useless), such as "horn of trumpeting" or "wand of pointing" - sort of along the lines of the "potion of apple juice" that many of you know from charcell ("roguelike") adventure games. I'd also recommend that everyone take a look at "Omega", IMO the best of the charcell adventure games. Lots of great ideas in there that are especially applicable to Crossfire, and it's available from a comp.sources.games archive near you. I'd also love to see an on-the-fly map generator that could take a bunch of tunable parameters, such as difficulty and terrain types. (Omega mixes hand-designed maps and semi-randomly generated ones.) Generated maps could use a special map naming syntax that would allow easy encoding of the parameters and backwards compatibility. The generated maps could become permanent, stay temporary (great for sea, sky, or similar places), or be cached. Definitely a wish list/blue sky item - just to get you thinking. Thanks to all the Crossfire workers! -- Matt @8^1 From crossfire-request Sat Mar 5 01:08:02 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 5 Mar 1994 01:08:00 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA24024; Fri, 4 Mar 1994 19:04:53 +0500 Date: Fri, 4 Mar 1994 19:04:53 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403050004.AA24024@acasun.eckerd.edu> To: crossfire@ifi.uio.no, master@rahul.net, roy@eckerd.edu Subject: Re: Bitmaps Content-Length: 267 Status: RO Can someone send me the list of legal colors? How would I use those colors in terms of the xpaint or pixmap programs? (Are they defined with RGB values in that X colormap file? (THe one that liosts every possible color name and the RGB values of it...) THnaks. :) From crossfire-request Fri Mar 4 23:36:26 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 23:36:24 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA22941; Fri, 4 Mar 1994 17:33:17 +0500 Date: Fri, 4 Mar 1994 17:33:17 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403042233.AA22941@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Bitmaps Content-Length: 630 Status: RO I have a friend who is a professional artist (paintings, album/CD covers, etc) and I could probably interest him in making some full color bitmaps for things... Is there any mechanism for supporting real 16 color icons for each bitmap? (All icons now are monochromatic, right? (All of one color...) I'd like to see some real, full color, bitmaps. That'd make the game look alot nicer, I think... There'd have to be a way create the bitmaps with a decent paint program, however. Is there any goos free ones? (I've never used xpaint... Is it any good?) He's used to Photoshop, but of course, we don't have that at my school. :) From crossfire-request Fri Mar 4 11:27:05 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 11:27:03 +0100 Received: by bolero.rahul.net id AA06444 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 4 Mar 1994 02:31:36 -0800 Date: Fri, 4 Mar 1994 02:31:36 -0800 From: Mark Wedel Message-Id: <199403041031.AA06444@bolero.rahul.net> To: peterm@soda.berkeley.edu, tvangod@ecst.csuchico.edu Subject: Re: Crossfire comments Cc: crossfire@ifi.uio.no, eanders+@CMU.EDU, master@rahul.net, rgg@aaii.oz.au Status: RO Actually, I added a table of identify. Pay 20 gp, and it identifies one item. Pretty simple hack to do. Since it is similar to amulets, you should be able to adjust the amount of gold it costs in the editor (or optionally, what you actually pay in.) I've put the object in the mage shop in the starting town. --Mark From crossfire-request Fri Mar 4 10:16:46 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 10:16:37 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id BAA16795; Fri, 4 Mar 1994 01:19:58 -0800 From: Tyler Van Gorder Message-Id: <199403040919.BAA16795@corpse.ecst.csuchico.edu> Subject: Re: Crossfire comments To: peterm@soda.berkeley.edu (Peter Mardahl) Date: Fri, 4 Mar 1994 01:19:57 -0800 (PST) Cc: crossfire@ifi.uio.no, eanders+@CMU.EDU, master@rahul.net, rgg@aaii.oz.au In-Reply-To: <199403040527.VAA07087@soda.berkeley.edu> from "Peter Mardahl" at Mar 3, 94 09:27:38 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 822 Status: RO > > Identify has made it very unfortunate to be a low level character. > It has become very difficult to obtain enough money to improve > your equipment or spell knowledge. Too hard. > > Some provision should be made so that > a) you can purchase identifications somehow, FOR A SET PRICE, > instead of having to buy scrolls. > b) "prayers" by low level characters will cause identification sometimes, > with the gods using an increasingly 'laissez faire' attitude as you advance > or > c) players can sometimes, though very inefficiently, identify stuff for > themselves. > Actually, this is one thing I want to do very soon on the chico server. Make some sort of temple that for a marginal fee, you can identify items...uses your runes of identify :> of course can a rune be triggered more then once???? Tyler. From crossfire-request Fri Mar 4 09:04:33 1994 Return-Path: Received: from surt.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 4 Mar 1994 09:04:33 +0100 From: Frank Tore Johansen Received: from localhost by surt.ifi.uio.no ; Fri, 4 Mar 1994 09:07:48 +0100 Message-Id: <19940304080748.6693.surt.ifi.uio.no@ifi.uio.no> Subject: Re: coding advice please To: crossfire@ifi.uio.no Date: Fri, 4 Mar 1994 09:07:47 +0100 (MET) In-Reply-To: <199403040601.WAA10550@soda.berkeley.edu> from "Peter Mardahl" at Mar 3, 94 10:01:05 pm X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 1946 Status: RO Peter wrote: > About my rune code. I really feel it is done is somewhat > non-optimally. Right now, the rune checks the square it is in every time > it moves (speed 1) to check and see if someone or something is stepping > on it. > > It also uses it's move to decide whether it is going to be visible > this turn or not. > > Runes right now 'blink' on and off according to their charisma, > at random. They are visible 2/charisma of the time, at random. > This was the best I could think of to conceal them without making > them totally invisible. This sounds better than using animation, since animation goes into archetype, thus can't be changed for any individual object. > I've thought about using autoapply on runes, but I'm not sure if > that works for monsters--monsters must also detonate runes if they > step on one. Can someone who knows a little about autoapply advise me > a bit? I'd rather not hack the code to figure it out! There are a couple of flags, "walk_on" and "fly_on" that causes an object to be applied by the object on top (fly_on triggers flying objects, naturally). "walk_on" is what causes a button to be pressed if you shoot an arrow so it lands upon it, so it should fit your need. > It isn't TOO bad right now. It only checks to see if there's anything > in the square, so it is not as expensive as a monster. That's quite fast, compared to the central timing routines... > Should I worry about this or continue on with other projects and > worry about efficiency later, or do other experienced coders feel > this is good enough anyway? I wouldn't worry all that much about it, though it's easy to add that "walk_on" flag. All objects; monsters, players and items; would cause the rune to be applied (just add a hook in apply()). With this flag, you could also work on the speed; just set speed_left to a random amount (depending on charisma) for when the rune will blink again. -Frank. From crossfire-request Tue Mar 8 16:49:43 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 16:49:41 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id KAA25089; Tue, 8 Mar 1994 10:49:33 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA04547; Tue, 8 Mar 94 10:47:38 -0500 Date: Tue, 8 Mar 94 10:47:38 -0500 From: Michael Glenn Message-Id: <9403081547.AA04547@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: Re: Crossfire 0.90.2 Status: RO I can add a few more bugs I found when compiling. Nothing major. (great job guys!) NeXT people need these changes to input.c. (others can probably skip) include/sproto.h: Add #ifdef SEARCH_ITEMS extern int command_search ( object *op, char *params ); #endif server/intput.c: Add after . #ifdef NeXT #include #endif Change (for struct direct) #if defined(_AIX) || defined(M_UNIX) to #if defined(_AIX) || defined(M_UNIX) && !defined(NeXT) Add (somewhere before using S_ISREG) #ifndef S_ISREG #define S_ISREG(x) (((x) & S_IFMT) == S_IFREG) #endif From crossfire-request Tue Mar 8 15:53:39 1994 Return-Path: Received: from melimelo.enst-bretagne.fr by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 15:53:29 +0100 Received: from enstb.enst-bretagne.fr by melimelo.enst-bretagne.fr (5.67b8/090294); Tue, 8 Mar 1994 15:51:48 +0100 Received: from galois.enst-bretagne.fr by enstb.enst-bretagne.fr (5.65c8/180193); Tue, 8 Mar 1994 15:54:06 +0100 Date: Tue, 8 Mar 1994 15:54:06 +0100 From: blaise@enstb.enst-bretagne.fr (BLAISE Eric) Message-Id: <199403081454.AA21589@enstb.enst-bretagne.fr> To: crossfire@ifi.uio.no Subject: Solaris 2.3 X-Charset: LATIN1 X-Char-Esc: 29 Status: RO I can't manage to compile crossfire-0.90.2 on solaris 2.3! Is there anyone who managed it? If yes, what did you do to get it work on that stupid OS! Thanks. +--------------------------------------------------------------+ | Eric Blaise | | ENSTBr BP 832 29285 Brest Cedex FRANCE | | email : blaise@enstb.enst-bretagne.fr | +--------------------------------------------------------------+ From crossfire-request Tue Mar 8 15:03:34 1994 Return-Path: Received: from hilja.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 15:03:33 +0100 Received: from localhost (hevi@localhost) by hilja.it.lut.fi (8.6.5/8.6.5/1.12.kim) id QAA28525; Tue, 8 Mar 1994 16:03:31 +0200 Date: Tue, 8 Mar 1994 16:03:30 +0200 (EET) From: Petri Heinil{ Subject: Re: Weight To: crossfire@ifi.uio.no In-Reply-To: <19940308123809.29453.gyda.ifi.uio.no@ifi.uio.no> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Tue, 8 Mar 1994, Kjetil Torgrim Homme wrote: > +--- > | Dollars did not make it into 90.2... I'm sorry that they're not > | there. It was a nice convenient way to carry money. > > Too convenient. And in any case, IMHO, "dollars" doesn't fit into the > Crossfire world. I'd much rather see an even more expensive form of > gems in the game. (some people carry around ~100 kilos of diamonds) Aren't the context of world of crossfire something like Middle Earth from Lords of The Rings. And I think the environment, items and monsters should be design so that player have sense or feeling to be in Middle Earth. So there should be some restrictions of translation of ideas (like using jewels instead dollars to express big amount of money). Otherwise there exists some day miniguns (of magic bullets, I have thinked :) or even BFG9000 :) > Uhm - something should be done about the weights... It is not unusual > that people carry around 10 times their own weight. > > I think that we can simply decrease the amount carriable by a > player. A Str 18 character is just too strong, I think. I mean - you > shouldn't be able to walk around with a plate mail, a mithril armour, > a high shield, the Excalibur, Holy Avenger etc. etc. without being > hampered. The player should model quite normal human. So the amount carried should be something one could think to carry himself (well one can imagine to be Tarzan or Conan but not Superman :). For those who clean the battle area to sell items, there could made a leash used to blob, that collect and carry items into shop :) > It is not really a good thing that the player knows how much > everything weighs down to 10 grammes accuracy. He should get a rough > approximation when looking at it, and identification would let him > know everything about it. Furthermore, the column with weights could > be left out (a client issue, really), and only the approximate full > weight of what he's carrying would be shown at all times (note this > number should not be the sum of the approximate weights). I agree, one can hardly say how much item weights in kilos, for exaple how many can say how much the coat one is wearing weights. The approximation could be informed by examining the item. Full weight could be same as in nethack or founded just from speed. ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Tue Mar 8 14:48:29 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 14:48:28 +0100 Received: from localhost (haatanen@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id PAA24390; Tue, 8 Mar 1994 15:48:27 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403081348.PAA24390@cc.lut.fi> Subject: Re: Weight To: crossfire@ifi.uio.no Date: Tue, 8 Mar 1994 15:48:27 +0200 (EET) In-Reply-To: <19940308123809.29453.gyda.ifi.uio.no@ifi.uio.no> from "Kjetil Torgrim Homme" at Mar 8, 94 01:38:09 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 1433 Status: RO From: Kjetil Torgrim Homme > Too convenient. And in any case, IMHO, "dollars" doesn't fit into the > Crossfire world. I'd much rather see an even more expensive form of > gems in the game. (some people carry around ~100 kilos of diamonds) > Uhm - something should be done about the weights... It is not unusual > that people carry around 10 times their own weight. The current money systems works quite well and diamonds are valuable enough. The problem is that players carry all their treasures with them all the time. We need those saved maps (inns, houses and banks). [ hmm, much talk but little code :( ] What is situation with the platina coins? Code seems support them at least somehow, but never tried if them really works. > I think that we can simply decrease the amount carriable by a > player. It makes sense, but you should have some place, where you can leave your money and extra items. See above. > It is not really a good thing that the player knows how much > everything weighs down to 10 grammes accuracy. He should get a rough > approximation when looking at it, and identification would let him > know everything about it. Agreed. If the weight code is going to be changed, it would make sense fix archetypes as well. Doesn't make sense that normal foods weights 6.5 kg and so on. Since you volunteered coding those, I don't see any reason why not making those changes :) -Tero From crossfire-request Tue Mar 8 14:24:00 1994 Return-Path: Received: from hilja.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 14:23:59 +0100 Received: from localhost (hevi@localhost) by hilja.it.lut.fi (8.6.5/8.6.5/1.12.kim) id PAA28315; Tue, 8 Mar 1994 15:23:57 +0200 Date: Tue, 8 Mar 1994 15:23:55 +0200 (EET) From: Petri Heinil{ Subject: Re: crossfire on the WWW To: crossfire@ifi.uio.no In-Reply-To: <9403080911.AA00766@diamond.cm.cf.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Tue, 8 Mar 1994, Simon McIntosh-Smith wrote: > > Hi, I erased that mail on the crossfire mosaic site, I would be > > interested in checking it out...can someone forward me the site again? > > There are currently 3 sights on the WWW regarding crossfire: > > Frank Tore Johansen's Crossfire pages: > http://www.ifi.uio.no:/~frankj/crossfire > > Cardiff University's crossfire pages: > http://www.cm.cf.ac.uk:/Fun > > City University London's crossfire pages: > http://web.cs.city.ac.uk:/documents/games/crossfire.html > > I think they each refer to one another. Frank has mentioned possibly > mergin the sites and having them all mirror one another, but nothing > is decided yet. Yes, there could be made a crossweb.tar.gz :) package that is mirrored. Or because the www forms the logic view independed to the existence on documentation, the pages could be divided into different servers and people interested. And servers are the "entried" by one known "official" server. As I see there are now subjects to share: - Common description (Frank's page) - Spoilers - Person's homepage list (= credits) - manual - documentation - map design style guide And more, for example if some wants to use his/her imagination there could be writed some kind of monster collection (ala AD&D). ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Tue Mar 8 13:46:12 1994 Return-Path: Received: from gyda.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 13:46:12 +0100 From: Kjetil Torgrim Homme Received: from localhost by gyda.ifi.uio.no ; Tue, 8 Mar 1994 13:46:10 +0100 Date: Tue, 8 Mar 1994 13:46:10 +0100 Message-Id: <19940308124610.636.gyda.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: Kjetil Torgrim Homme's message of Tue, 8 Mar 1994 13:38:09 +0100 <19940308123809.29453.gyda.ifi.uio.no@ifi.uio.no> Subject: Re: Weight Status: RO +--- I wrote: | This ought not be too much coding I broke off mid-sentence there... I meant to say: This probably doesn't require much coding, and I'd be happy to do it if people agree. Kjetil T. From crossfire-request Tue Mar 8 13:38:13 1994 Return-Path: Received: from gyda.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Tue, 8 Mar 1994 13:38:12 +0100 From: Kjetil Torgrim Homme Received: from localhost by gyda.ifi.uio.no ; Tue, 8 Mar 1994 13:38:09 +0100 Date: Tue, 8 Mar 1994 13:38:09 +0100 Message-Id: <19940308123809.29453.gyda.ifi.uio.no@ifi.uio.no> To: peterm@soda.berkeley.edu CC: crossfire@ifi.uio.no In-reply-to: Peter Mardahl's message of Mon, 7 Mar 1994 23:07:10 -0800 <199403080707.XAA16725@soda.berkeley.edu> Subject: Weight Status: RO +--- Peter Mardahl about using weight to identify special items: | There's nothing wrong with that, I think. Observant people should | be able to notice things about items indicating that they're cursed | or better than usual. Right! And in any case - there is no rule that cursed objects can't have "weight" < 100 in lib/artifacts... +--- | Dollars did not make it into 90.2... I'm sorry that they're not | there. It was a nice convenient way to carry money. Too convenient. And in any case, IMHO, "dollars" doesn't fit into the Crossfire world. I'd much rather see an even more expensive form of gems in the game. (some people carry around ~100 kilos of diamonds) Uhm - something should be done about the weights... It is not unusual that people carry around 10 times their own weight. I think that we can simply decrease the amount carriable by a player. A Str 18 character is just too strong, I think. I mean - you shouldn't be able to walk around with a plate mail, a mithril armour, a high shield, the Excalibur, Holy Avenger etc. etc. without being hampered. It is not really a good thing that the player knows how much everything weighs down to 10 grammes accuracy. He should get a rough approximation when looking at it, and identification would let him know everything about it. Furthermore, the column with weights could be left out (a client issue, really), and only the approximate full weight of what he's carrying would be shown at all times (note this number should not be the sum of the approximate weights). This ought not be too much coding Kjetil T. From crossfire-request Tue Mar 8 12:26:44 1994 Return-Path: Received: from atuk.aspentec.com by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 12:26:42 +0100 Received: by atuk.aspentec.com (MX V3.3 VAX) id 4552; Tue, 08 Mar 1994 11:24:00 GMT Date: Tue, 08 Mar 1994 11:25:09 GMT From: "Sam Mackrill : AspenTech UK" To: crossfire@ifi.uio.no CC: mackrill@atuk.aspentec.com Message-ID: <0097B1FE.4370649F.4552@atuk.aspentec.com> Subject: Crossfire 0.90.2 compiling Status: RO If the player colour flag (PLAYER_COLOR in config.h) is set then Crossfire won't compile because the command_color function is missing from sproto.h add the following line extern int command_color ( object *op, char *params ); Sam Can we have a language flag compiler option? It is very hard for me to type "color"... it should of course be "colour" From crossfire-request Tue Mar 8 10:40:17 1994 Return-Path: Received: from thrall.cm.cf.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 10:40:13 +0100 Received: from cm.cf.ac.uk by thrall.cm.cf.ac.uk with SMTP (PP) id <28136-0@thrall.cm.cf.ac.uk>; Tue, 8 Mar 1994 09:11:10 +0000 Date: Tue, 8 Mar 94 09:11:08 GMT From: Simon McIntosh-Smith Message-Id: <9403080911.AA00766@diamond.cm.cf.ac.uk> To: crossfire@ifi.uio.no Subject: crossfire on the WWW Status: RO > Hi, I erased that mail on the crossfire mosaic site, I would be > interested in checking it out...can someone forward me the site again? There are currently 3 sights on the WWW regarding crossfire: Frank Tore Johansen's Crossfire pages: http://www.ifi.uio.no:/~frankj/crossfire Cardiff University's crossfire pages: http://www.cm.cf.ac.uk:/Fun City University London's crossfire pages: http://web.cs.city.ac.uk:/documents/games/crossfire.html I think they each refer to one another. Frank has mentioned possibly mergin the sites and having them all mirror one another, but nothing is decided yet. Simon From crossfire-request Tue Mar 8 08:07:16 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 08:07:14 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id XAA16725 for crossfire@ifi.uio.no; Mon, 7 Mar 1994 23:07:10 -0800 Date: Mon, 7 Mar 1994 23:07:10 -0800 From: Peter Mardahl Message-Id: <199403080707.XAA16725@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: silver, gold, and dollars Status: RO Dollars did not make it into 90.2... I'm sorry that they're not there. It was a nice convenient way to carry money. PeterM From crossfire-request Tue Mar 8 06:13:07 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 06:12:55 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA23267; Tue, 8 Mar 1994 15:12:11 +1000 Date: Tue, 8 Mar 1994 15:12:11 +1000 From: "Rupert G. Goldie" Message-Id: <199403080512.AA23267@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no Subject: Fix for 0.90.2 Cc: master@rahul.net Status: RO To get 0.90.2 to build without NOT_PERMADEATH defined remove line 1983 of server/player.c Rupert From crossfire-request Tue Mar 8 05:22:03 1994 Return-Path: Received: from alaska.et.byu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 05:22:01 +0100 Received: by alaska.et.byu.edu; Mon, 7 Mar 1994 21:21:47 -0700 From: iversons@alaska.et.byu.edu (Scott Iverson) Message-Id: <199403080421.VAA02633@alaska.et.byu.edu> Subject: Re: Crossfire 0.90.2 To: crossfire@ifi.uio.no (Crossfire discussion list) Date: Mon, 7 Mar 94 21:21:47 MST Cc: crossfire@ifi.uio.no In-Reply-To: <19940308003358.18094.holmenkollen.ifi.uio.no@ifi.uio.no>; from "Mark Wedel" at Mar 8, 94 1:33 am Mailer: Elm [revision: 72.14] Status: RO Here is a mistake in crossfire.cf. XPM_LIBDIR = Xpm_LibDir It should read: XPM_LIBDIR = $(Xpm_LibDir) Also, please change the order from: -lXpm -L../common -lcross -lX11 to: -L../common -lcross -lXpm -lX11 in the makefiles. Other than that, this has been the easiest install I've had for crossfire. --Scott From crossfire-request Tue Mar 8 05:20:57 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 05:20:54 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id UAA02562 for crossfire@ifi.uio.no; Mon, 7 Mar 1994 20:20:34 -0800 Date: Mon, 7 Mar 1994 20:20:34 -0800 From: Peter Mardahl Message-Id: <199403080420.UAA02562@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: identify debate, my comments Status: RO I think that it is good that there is some hint that items are cursed/magical other than using identify. If people are smart, they can avoid using magic. There's nothing wrong with that, I think. Observant people shold be able to notice things about items indicating that they're cursed or better than usual. In other words, I think the current system is fine. :) regards, PeterM From crossfire-request Tue Mar 8 04:53:48 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 04:53:44 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id TAA00521 for crossfire@ifi.uio.no; Mon, 7 Mar 1994 19:53:34 -0800 Date: Mon, 7 Mar 1994 19:53:34 -0800 From: Peter Mardahl Message-Id: <199403080353.TAA00521@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: 90.2 available at soda.berkeley.edu Status: RO for public ftp pub/crossfire You'll probably have better luck with world.net, however. PeterM From crossfire-request Tue Mar 8 03:23:40 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 03:23:33 +0100 Received: by bolero.rahul.net id AA16729 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 7 Mar 1994 18:23:31 -0800 Date: Mon, 7 Mar 1994 18:23:31 -0800 From: Mark Wedel Message-Id: <199403080223.AA16729@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: ftp.world.net as main ftp site? Status: RO Are there objections to having ftp.world.net be the central ftp server, ifi mirroring off that, and the other site(s?) mirror off ifi? The main differences would be these: To put code up for ftp, it would have to go on the world.net site, and not ifi. And there might be a small delay in the mirror sites getting the source from world.net. The administrator of world.net wanted me to get some type of consensus on the change before he makes it. So now is the time to speak up. --Mark From crossfire-request Tue Mar 8 01:44:22 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 01:44:22 +0100 From: Kjetil Torgrim Homme Received: from localhost by holmenkollen.ifi.uio.no ; Tue, 8 Mar 1994 01:44:21 +0100 Date: Tue, 8 Mar 1994 01:44:21 +0100 Message-Id: <19940308004421.18110.holmenkollen.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: Mark Wedel's message of Mon, 7 Mar 1994 14:41:11 -0800 <199403072241.AA03454@bolero.rahul.net> Subject: Re: 90.2 Status: RO +--- Mark Wedel: | A few things would need to be changed (like ifi mirroring off of | world.net, and it would probably be better for the other sites to | mirror off of world.net, but mirroring off of ifi would still work). You won't see ifi mirroring anyone. Setting up mirror software is too much work for so little gain. Unless people _need_ to get a copy within hours of release, the current state of affairs works nicely. (although I admit /incoming ought to be administered better... somebody should probably do some cleaning up) Kjetil T. From crossfire-request Tue Mar 8 00:49:30 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Tue, 8 Mar 1994 00:49:26 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id PAA04257; Mon, 7 Mar 1994 15:49:21 -0800 Date: Mon, 7 Mar 1994 15:49:21 -0800 From: Peter Mardahl Message-Id: <199403072349.PAA04257@soda.berkeley.edu> To: crossfire@ifi.uio.no, kjetilho@ifi.uio.no Subject: Re: Crossfire 0.90.2 Status: RO As soon as I've got the new distribution, I'll stick it on an ftp site local to me. If someone lse does this also, it would be very nice. I am on the west coast..... PeterM From crossfire-request Mon Mar 7 23:41:18 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 23:41:14 +0100 Received: by bolero.rahul.net id AA03454 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 7 Mar 1994 14:41:11 -0800 Date: Mon, 7 Mar 1994 14:41:11 -0800 From: Mark Wedel Message-Id: <199403072241.AA03454@bolero.rahul.net> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: 90.2 Status: RO I'm going to look at ftp.world.net. Maybe talk to the people there, and have that as the primary site, with others mirroring off of that. A few things would need to be changed (like ifi mirroring off of world.net, and it would probably be better for the other sites to mirror off of world.net, but mirroring off of ifi would still work). --Mark From crossfire-request Mon Mar 7 20:45:52 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 20:45:51 +0100 From: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= MIME-Version: 1.0 Received: from localhost by holmenkollen.ifi.uio.no ; Mon, 7 Mar 1994 20:45:50 +0100 Date: Mon, 7 Mar 1994 20:45:49 +0100 To: crossfire Subject: Thievery? Nah. Message-ID: Status: RO I forgot to mention that I think thievery - stealing items is a pretty bad idea in a game like this. Picking locks, on the other hand, is a better idea. We aren't really all that many people playing this game, and I think we should encourage cooperation rather than stealing from each other. We're supposed to be the good guys, remember? A skill like backstabbing, on the other hand, would be a better idea. And did I mention the Paralyzing Pinch of the Ninja? - Regards, Bjorn. From crossfire-request Mon Mar 7 19:41:42 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 19:41:40 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id KAA01482 for crossfire@ifi.uio.no; Mon, 7 Mar 1994 10:41:36 -0800 From: Tyler Van Gorder Message-Id: <199403071841.KAA01482@corpse.ecst.csuchico.edu> Subject: Where is that mosaic site again? To: crossfire@ifi.uio.no Date: Mon, 7 Mar 1994 10:41:36 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 152 Status: RO Hi, I erased that mail on the crossfire mosaic site, I would be interested in checking it out...can someone forward me the site again? thanks. Tyler. From crossfire-request Mon Mar 7 16:59:42 1994 Return-Path: Received: from po6.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 16:59:26 +0100 Received: from localhost (postman@localhost) by po6.andrew.cmu.edu (8.6.4/8.6.4) id KAA03346 for crossfire@ifi.uio.no; Mon, 7 Mar 1994 10:59:21 -0500 Received: via switchmail; Mon, 7 Mar 1994 10:59:20 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Mon, 7 Mar 1994 10:57:47 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Mon, 7 Mar 1994 10:57:43 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Mon, 7 Mar 1994 10:57:43 -0500 (EST) Message-ID: Date: Mon, 7 Mar 1994 10:57:43 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: 90.2 In-Reply-To: <19940307133336.9149.menja.ifi.uio.no@ifi.uio.no> References: <19940307133336.9149.menja.ifi.uio.no@ifi.uio.no> Status: RO Since Mark is in the U.S., and a lot of other people are in the U.S., would it make sense for mark to upload it to some well connected site in the U.S., and then have someone there move it to finland? I could do this since I'm pretty well connected (1 token ring and 1 ethernet to the T-3 backbone.) (Unfortunately, my machine will disappear in May, so it might be better to find someone else) -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Mon Mar 7 16:59:57 1994 Return-Path: Received: from edison.eng.auburn.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 16:55:55 +0100 Received: from lab15.eng.auburn.edu (lab15.eng.auburn.edu [131.204.11.15]) by edison.eng.auburn.edu (8.6.4/8.6.4) with ESMTP id JAA06618 for ; Mon, 7 Mar 1994 09:55:38 -0600 Received: from localhost (dyessww@localhost) by lab15.eng.auburn.edu (8.6.4/8.6.4) id JAA13391; Mon, 7 Mar 1994 09:55:39 -0600 Date: Mon, 7 Mar 1994 09:54:31 -0600 (CST) From: "William W. Dyess" Subject: Re: Stats and Races To: crossfire@ifi.uio.no In-Reply-To: <9403061316.AA11121@acasun.eckerd.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO I agree. I'd like to see a four skill areas approach taken in crossfire. --Bill On Sun, 6 Mar 1994, Jonathan Roy wrote: > > The 4 skill areas approach is what Dungeon Master used, and it > is, of course, one of the best computer RPG type games of all time. :) > > From crossfire-request Mon Mar 7 14:45:29 1994 Return-Path: Received: from po6.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 14:45:26 +0100 Received: from localhost (postman@localhost) by po6.andrew.cmu.edu (8.6.4/8.6.4) id IAA01625 for crossfire@ifi.uio.no; Mon, 7 Mar 1994 08:45:22 -0500 Received: via switchmail; Mon, 7 Mar 1994 08:45:21 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Mon, 7 Mar 1994 08:45:17 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Mon, 7 Mar 1994 08:45:15 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Mon, 7 Mar 1994 08:45:14 -0500 (EST) Message-ID: <0hSmzem00Zk2F=D3AL@andrew.cmu.edu> Date: Mon, 7 Mar 1994 08:45:14 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Stats and Races In-Reply-To: <19940307093817.29211.menja.ifi.uio.no@ifi.uio.no> References: <19940307093817.29211.menja.ifi.uio.no@ifi.uio.no> Status: RO Frank Tore Johansen writes: > > 3) Add class specific items. Maybe a mage is the only one that can > > use special wands, cleric certain staves, etc. Same could be > > for armor and fighters, for even some of the more mundane stuff (maybe > > only fighters will be able to wearing the plate mail..) > > This is what I've always tried to avoid. The average player would > ask "why can't my mage wear platemail?", and there would be no > good answer. Instead I've tried to add penalties, like limiting > spell-point regeneration. If this isn't enough then sure, go ahead > and add a fumble chance for the heaviest armours. Or just add fatigue, and you're done. Unless your mage has high str, they will not be able to wander around with platemail on, they'll get too tired. > The same goes for items...if you want only mages to use a specific > wand, then require high int to avoid fumbling when using in instead > of just disallowing it. The world isn't black and white... This would work well. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Mon Mar 7 14:34:59 1994 Return-Path: Received: from menja.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 14:34:59 +0100 From: Kjetil Torgrim Homme Received: from localhost by menja.ifi.uio.no ; Mon, 7 Mar 1994 14:34:57 +0100 Date: Mon, 7 Mar 1994 14:34:57 +0100 Message-Id: <19940307133457.9190.menja.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no Subject: Crossfire 0.90.2 Status: RO Mark tried uploading it, but his link was _very_ slow. The file lengths will be: 500910 crossfire-0.90.2.arch.tar.gz 993112 crossfire-0.90.2.maps.tar.gz 1110587 crossfire-0.90.2.tar.gz He wrote to me: > I may just quite after it finishes with the arch file, and try again > tomorrow afternoon (my time), hopefully getting a better transfer rate. When the files are transferred, I'll move them into the main directory and post an announcement to crossfire-announce. Be patient :) Kjetil T. From frankj Mon Mar 7 14:33:35 1994 Subject: Re: 90.2 To: crossfire@ifi.uio.no Date: Mon, 7 Mar 1994 14:33:35 +0100 (MET) In-Reply-To: <23268.763043743@mailhost.aber.ac.uk> from "Benjamin Thomas Ketteridge" at Mar 7, 94 12:35:43 pm X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 316 Status: RO > Well? its not on ftp.ifi.uio.no yet is it! :-) > There's crossfire-0.90.2.arch.tar.gz and crossfire-0.90.2.maps.tar.gz but > no crossfire-0.90.2.tar.gz (if you're following the distribution convention > from 90.1) Seems like links are too bad to release 0.90.2 today... Just wait for the announcement. -Frank. From crossfire-request Mon Mar 7 13:35:31 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 13:35:29 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Mon, 7 Mar 1994 12:33:58 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA19810; Mon, 7 Mar 94 12:30:34 GMT To: master@rahul.net Cc: crossfire@ifi.uio.no Subject: 90.2 Date: Mon, 07 Mar 1994 12:35:43 +0000 Message-Id: <23268.763043743@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Well? its not on ftp.ifi.uio.no yet is it! :-) There's crossfire-0.90.2.arch.tar.gz and crossfire-0.90.2.maps.tar.gz but no crossfire-0.90.2.tar.gz (if you're following the distribution convention from 90.1) Sorry to be so pushy :-) but I'd like to see the new version :-) Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Mon Mar 7 11:32:34 1994 Return-Path: Received: from cardhu.cs.hut.fi by ifi.uio.no with SMTP (8.6.4/ifi2.4) id ; Mon, 7 Mar 1994 11:32:32 +0100 Received: by cardhu.cs.hut.fi id AA26125 (5.65c8/HUTCS-C 1.3); Mon, 7 Mar 1994 12:32:30 +0200 Date: Mon, 7 Mar 1994 12:32:30 +0200 Message-Id: <199403071032.AA26125@cardhu.cs.hut.fi> From: Tero Kivinen To: Frank Tore Johansen Cc: crossfire@ifi.uio.no Subject: Re: Stats and Races In-Reply-To: <19940307093817.29211.menja.ifi.uio.no@ifi.uio.no> References: <199403070759.AA20298@bolero.rahul.net> <19940307093817.29211.menja.ifi.uio.no@ifi.uio.no> Organization: Helsinki University of Technology/Lifelong Learning Institute Dipoli Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="iso-8859-1" Status: RO Frank Tore Johansen writes: > good answer. Instead I've tried to add penalties, like limiting > spell-point regeneration. If this isn't enough then sure, go ahead > and add a fumble chance for the heaviest armours. > The same goes for items...if you want only mages to use a specific > wand, then require high int to avoid fumbling when using in instead > of just disallowing it. The world isn't black and white... If you add special spell fumbles so that fumbling a spell can be very deadly (anything from casting random spell up to teleportting to random place at random map). Your GM in Rolemaster created his own special failure chart that have about 70 special failures, and i think most of them could be put to crossfire too. Those fumbles include such things as delayed spell (spell effect is delayed for some time), wrong direction, size modification (larger or smaller area of effect), reversing spell, spell affecting the caster, spell hitting the nearist friend, character being stunned for some time, constant spell (this causes mage to permantly loose the powerpoints used to cast spell (quite usefull if the spell happens to be some kind of healing spell, but usually quite useless) etc. If the fumble range is quite large then spellcasters will think twice before casting spell that they don't know well enough. And if using a armor raises the fumble change quite a lot mages usually wouldn't wear armours, at least when casting spells. PS. I think we should take some roleplaying games as a model instead of nethack etc. -- Tero_Kivinen@hut.FI Work : +358-0-451 4032 Magnus Enckellin kuja 9 K 19, 02610, Espoo Home : +358-0-502 1573 From crossfire-request Mon Mar 7 11:31:41 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 11:31:35 +0100 Received: by bolero.rahul.net id AA26660 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 7 Mar 1994 02:31:32 -0800 Date: Mon, 7 Mar 1994 02:31:32 -0800 From: Mark Wedel Message-Id: <199403071031.AA26660@bolero.rahul.net> To: eneq@meryl.csd.uu.se, master@rahul.net Subject: Re: Stats and Races Cc: crossfire@ifi.uio.no Status: RO Well, for it to be useful, it needs to be easy to do. If many arcane things need to be done, people won't try to design their own character. And there is still the problem of what to do if you have a remote server. IF running locally, it is pretty easy to do (add your own images). Also, if it slows the game down too much, people obviously won't use it. However, when client server happens, this slowdown should occur on the client side, and not the server, so it shouldn't make much difference for playing. --Mark From crossfire-request Mon Mar 7 11:24:30 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 11:24:29 +0100 Received: by ida.csd.uu.se with SMTP id AA06150 (5.65c8/IDA-1.4.4 for ); Mon, 7 Mar 1994 11:24:08 +0100 Message-Id: <199403071024.AA06150@ida.csd.uu.se> To: Mark Wedel Cc: crossfire@ifi.uio.no Subject: Re: Stats and Races In-Reply-To: Your message of "Sun, 06 Mar 1994 20:56:11 PST." <199403070456.AA13446@bolero.rahul.net> Date: Mon, 07 Mar 1994 11:24:07 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO > With color pixmaps, it probably shouldn't be to hard to let people insert >a few custom images for their characters. Just at load time, use a differnt >face number, and allocate the space for them. That was what chrfont did (CHaRacter FONT). But it works (worked) only with fonts, and it didn't seem to trigger that much enthusiasm when it worked. /Eneq From crossfire-request Mon Mar 7 21:09:57 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id ; Mon, 7 Mar 1994 21:09:54 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA15995; Mon, 7 Mar 1994 15:06:45 +0500 Date: Mon, 7 Mar 1994 15:06:45 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403072006.AA15995@acasun.eckerd.edu> To: bjornlu@ifi.uio.no, crossfire@ifi.uio.no Subject: Re: Thievery? Nah. Content-Length: 268 Status: RO How about Thiefs can automaticly try to go invisible every now and then, with the sucess chance and frequency related to level? Have attacks from invisible players do 2x or 3x damage. (more?) THus, a thief and go scout, and sneak attack, monsters... Just an idea. From crossfire-request Mon Mar 7 21:08:39 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 21:08:37 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA15954; Mon, 7 Mar 1994 15:05:28 +0500 Date: Mon, 7 Mar 1994 15:05:28 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403072005.AA15954@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 652 Status: RO Ideas... If we get mroe into classes, and have a SUmmoner, you can summon differnt types of monsters at each level. Some are summon and command like now... Elementals, animals... Others are 'controled'. You summona demon. Each tick it's under your control costs a certain number of magic points. Getting hit by an enemy disrupts control. There is a small chance a summoned demon will not disappear, but attack the caster, if he is disrupted. ([21~We'd need a way to end the summoning.) Just that that'd be neat... :) Definatly have the failure % related to level. A level 1 Summoner, somehow trying to summon a demon, is going die horrbily. :) From crossfire-request Mon Mar 7 21:07:43 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 21:07:31 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA15927; Mon, 7 Mar 1994 15:04:23 +0500 Date: Mon, 7 Mar 1994 15:04:23 +0500 From: hluciano@eckerd.edu (Henry J. Luciano) Message-Id: <9403072004.AA15927@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Wand bug? Content-Length: 457 Status: RO Small problem with wands of summon (whatever): when you use the last charge to summon an elemental, it just goes in one direction and you cannot control it. A minor annoyance. -------------------------------------------------------------------- Henry John Luciano, IV | Good... Bad... I'm the guy with the gun. hluciano@eckerd.edu | --"Good" Ash, from _Army of Darkness_ -------------------------------------------------------------------- From crossfire-request Mon Mar 7 21:06:22 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 21:06:19 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA15886; Mon, 7 Mar 1994 15:03:10 +0500 Date: Mon, 7 Mar 1994 15:03:10 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403072003.AA15886@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 135 Status: RO I have a rod of summon golem.. It summons one, but if I try to direct it, the rod just whines, and the golem just walks straight... From crossfire-request Mon Mar 7 10:38:08 1994 Return-Path: Received: from menja.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 10:38:07 +0100 From: Frank Tore Johansen Received: from localhost by menja.ifi.uio.no ; Mon, 7 Mar 1994 10:38:17 +0100 Message-Id: <19940307093817.29211.menja.ifi.uio.no@ifi.uio.no> Subject: Re: Stats and Races To: crossfire@ifi.uio.no Date: Mon, 7 Mar 1994 10:38:16 +0100 (MET) In-Reply-To: <199403070759.AA20298@bolero.rahul.net> from "Mark Wedel" at Mar 6, 94 11:59:16 pm X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 784 Status: RO > 3) Add class specific items. Maybe a mage is the only one that can > use special wands, cleric certain staves, etc. Same could be > for armor and fighters, for even some of the more mundane stuff (maybe > only fighters will be able to wearing the plate mail..) This is what I've always tried to avoid. The average player would ask "why can't my mage wear platemail?", and there would be no good answer. Instead I've tried to add penalties, like limiting spell-point regeneration. If this isn't enough then sure, go ahead and add a fumble chance for the heaviest armours. The same goes for items...if you want only mages to use a specific wand, then require high int to avoid fumbling when using in instead of just disallowing it. The world isn't black and white... -Frank. From crossfire-request Mon Mar 7 08:59:27 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 08:59:19 +0100 Received: by bolero.rahul.net id AA20298 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Sun, 6 Mar 1994 23:59:16 -0800 Date: Sun, 6 Mar 1994 23:59:16 -0800 From: Mark Wedel Message-Id: <199403070759.AA20298@bolero.rahul.net> To: crossfire@ifi.uio.no, eanders+@CMU.EDU, peterm@soda.berkeley.edu Subject: Re: Stats and Races Status: RO I remember there was a game for the apple // with different character classes, and the classes got experience based on certain actions (the player did not know how much exp each character had, only if the character was ready to train.) what didn't take me very long to figure out was what actions to do to get each character in the party experience. Have the fighters beat up on the monsters, clerics heal the fighters, and if it could be done safely, the mage could blast the monsters. I think if any such method is chosen for crossfire, people will quickly figure out what they need to do (they could, of course, look at the code in a worst case situation.) And since crossfire parties may either be quite loose or nonexistant (depending on the server), certain actions for experience may nto be especially good (ie, healing other players). Likewise, a class can not become especially weak. In AD&D, thieves are hardly a good fighting class, but it is ok, because they can instead do other useful services (find traps, or maybe sneak around and do a backstab or whatever.) But such a character probalby would not do very well in crossfire, since it is mainly fighting. What I think might be better, and easier, is this: 1) Each class has more unique abilities. Mages will always be better at casting spells, fighters/barbarians better and beating things up, clerics better and cleric spells, etc. As it is now, at a certain level, or depending on the abilities, any class can pretty much do any of these other things. That mage can put on the plate mail and weild a sword, and become a fighter. That fighter can pick up spell books, etc. 2) To follow this basis, new classes could be added. Paladins might be combo fighters/clerics (ok fighting, ok cleric spells.) These woudl be worse and better compared to being more a single class (ie, the paladins fighting and cleric skill would be worse than that of either a fighter or cleric respectively, but the paladin's cleric skill would be better than that of a straight fighter, etc.) This way, class selection has real long term effects (however, some of the new Berkeley characters already have this, with not being able to use weapons and armor.) The experience patch someone put up (making certain classes take more experience to gain levels) could be applied in certain classes also. 3) Add class specific items. Maybe a mage is the only one that can use special wands, cleric certain staves, etc. Same could be for armor and fighters, for even some of the more mundane stuff (maybe only fighters will be able to wearing the plate mail..) 4) A race and class split would be nice, but not required. If races are added, they should probalby give more than just starting stat bonuses (like certain special abilities perhaps..) 5) Give each race certain abilities that are actively used (pick locks for thieves, praying for priests, etc.) --Mark From crossfire-request Mon Mar 7 07:30:18 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 07:30:16 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id WAA17967; Sun, 6 Mar 1994 22:30:12 -0800 Date: Sun, 6 Mar 1994 22:30:12 -0800 From: Peter Mardahl Message-Id: <199403070630.WAA17967@soda.berkeley.edu> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: Stats and Races Status: RO >> cleric hp healed * difficulty of level wis, int >> >> thief opening doors, killing traps dex, int >> and active walls >The cleric and theif skills would be harder to improve because at >least right now most of the game is in killing things. True--as well as major code revisions. This is not a small thing that I propose, and this is something that many people should have input on before anything is done. I truly can't think of any good way to have cleric skills advance levels--killing monsters with magic and with a sword are very straightforward ideas, and disarming things can go toward experience in the thief area. But cleric? How do you credit things toward their experience? Casting number of defensive/healing spells? Having a system in which a monster kill is divied up equally is silly. Why should murdering some poor monster with fireball improve your thief ability? The best thought about how to advance clerics is this: you track all the hp healed by magic, and multiply it by the level of the nearest monster. If no monster is in range, then no exp. Also, if the monster is not threatening, no exp. Hard to implement, and easy to abuse. For defensive spells, you are awarded experience based on how much hp the spell has saved you*the level of what tried to hurt you. This is very straightforward now: spells carry the level of whatever cast the spell since level dependencies on spell power were added. The thresholds for advancement in each category do not need to be the same at all.... This whole idea may be to complicated to be at all practical. Certainly I don't look forward to coding it. I might, though, if people seem to think it's very worthwhile. Regards, PeterM From crossfire-request Mon Mar 7 17:35:26 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 17:35:24 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA09895; Mon, 7 Mar 1994 11:28:21 +0500 Date: Mon, 7 Mar 1994 11:28:21 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403071628.AA09895@acasun.eckerd.edu> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: 90.2 Content-Length: 298 Status: RO How about /tmp on uunet? Programs stay there a week, and uunet is very fast. Also remmeber you can just stick your ftp session in the background, and log off. :) I do that with 8meg FTP downloadings. (like gcc, emacs, etc) Just start it, bg it, and go home... Looking forward to the new version. From crossfire-request Mon Mar 7 05:56:17 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 05:56:15 +0100 Received: by bolero.rahul.net id AA13446 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Sun, 6 Mar 1994 20:56:11 -0800 Date: Sun, 6 Mar 1994 20:56:11 -0800 From: Mark Wedel Message-Id: <199403070456.AA13446@bolero.rahul.net> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: Stats and Races Status: RO More interesting for faces would bo to create unique faces or let them be used, similar to some of hte old SSI AD&D games for various computers. With color pixmaps, it probably shouldn't be to hard to let people insert a few custom images for their characters. Just at load time, use a differnt face number, and allocate the space for them. I think right now (aside from trying to get the 0.90.2 release together), I will try to improve the xpm display code. IT can flicker a bit and have some other annoying habits. --Mark From crossfire-request Mon Mar 7 05:35:47 1994 Return-Path: Received: from po3.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 05:35:45 +0100 Received: from localhost (postman@localhost) by po3.andrew.cmu.edu (8.6.4/8.6.4) id XAA19514 for crossfire@ifi.uio.no; Sun, 6 Mar 1994 23:35:39 -0500 Received: via switchmail; Sun, 6 Mar 1994 23:35:37 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sun, 6 Mar 1994 23:34:45 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sun, 6 Mar 1994 23:34:30 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Sun, 6 Mar 1994 23:34:29 -0500 (EST) Message-ID: <0hSevJy00Zk2N1Q18J@andrew.cmu.edu> Date: Sun, 6 Mar 1994 23:34:29 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Stats and Races In-Reply-To: <199403060433.UAA03759@soda.berkeley.edu> References: <199403060433.UAA03759@soda.berkeley.edu> Status: RO Peter Mardahl writes: > [ skill advancement ] Relatively good idea, I like the idea of dividing the skills up. I'd like people to develop skill in offence and defence, dividing those skills into various weapons, and allowing people to train using money would also be cool > cleric hp healed * difficulty of level wis, int > > thief opening doors, killing traps dex, int > and active walls The cleric and theif skills would be harder to improve because at least right now most of the game is in killing things. Speaking of which, I'd like to see the game slow down some. Right now, my characters seem to swing about 2 times a second. This is really blazing fast. Try standing and moving your arm back and forth about 2 feet 2 times a second. I can't do it for nearly as long as my characters do. I'd like to see the game slow down, make monsters more valuable to kill and make fewer of them. This would also make the game scale better to more people. > Your 'face' would depend on which branch of skill you had the > highest level in. I'd rather have it be based on your original race modified somehow. > What do people think about this? I like it. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Mon Mar 7 03:05:48 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 03:05:45 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id SAA23070; Sun, 6 Mar 1994 18:05:40 -0800 Date: Sun, 6 Mar 1994 18:05:40 -0800 From: Peter Mardahl Message-Id: <199403070205.SAA23070@soda.berkeley.edu> To: crossfire@ifi.uio.no, rgg@aaii.oz.au, roy@eckerd.edu Subject: Re: Freidnly... Status: RO About penalizing people for player killing--- it's not very hard to kill someone accidentally. I would rather see, than a penalty, that the killer gains no experience, and the victim loses nothing. If someone kills himself with a spell, though, he should still suffer the experience loss penalty. PeterM From crossfire-request Mon Mar 7 02:49:40 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 02:49:29 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA01881; Mon, 7 Mar 1994 11:49:08 +1000 Date: Mon, 7 Mar 1994 11:49:08 +1000 From: "Rupert G. Goldie" Message-Id: <199403070149.AA01881@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, master@rahul.net Subject: Re: Crossfire comments Status: RO > The advantage of an altar would be that it never runs out. Where as > shops often run out of scrolls. > > I'll try adding such an item, and putting it in the starting town mage > shop. > > --Mark > Another advantage that just occured to me is that scrolls are portable while an altar is not, so the players will have to lug their booty back to town to get it identified cheaply Rupert From crossfire-request Mon Mar 7 02:44:42 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 7 Mar 1994 02:44:31 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA01803; Mon, 7 Mar 1994 11:43:43 +1000 Date: Mon, 7 Mar 1994 11:43:43 +1000 From: "Rupert G. Goldie" Message-Id: <199403070143.AA01803@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: Freidnly... Status: RO > > A possible way to promote freidnlyness beteen players is > is to penalize your EXP for killing a PC... Sort of like > befor,e when you'd get alot of EXP for killng > a high level PC, you'd lose it instead.... > > (Just a gueestions. :) ) I think this would be a good compile-time option. I'll add it when 0.90.2 comes out. Rupert From crossfire-request Thu Mar 10 11:32:55 1994 Return-Path: Received: from munnari.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 11:32:40 +0100 Received: from orthanc.cs.su.OZ.au by munnari.oz.au with MHSnet (5.83--+1.3.1+0.50) id AA28471; Thu, 10 Mar 1994 20:32:16 +1000 (from ftww@orthanc.cs.su.OZ.au) Message-Id: <9403101032.28471@munnari.oz.au> Subject: Re: 0.92 Bug? (and other) To: crossfire@ifi.uio.no Date: Thu, 10 Mar 1994 20:31:43 +1000 (EST) From: "Fred the Wonder Worm" In-Reply-To: <199403100410.AA29669@bolero.rahul.net> from "Mark Wedel" at Mar 9, 94 08:10:32 pm X-Face: )\c`u_%V|7EQUDUt%5v'IJ?=@^Wf^<#,~CjzL`/2q0=-O6XW/Z8A2j.kgg:| 7|YZPSxy}rIuw8qD|/cQZ9^6kb:1XLleXhOl-U>(c~d`bC)%7FItZOUEw?=x%TBQ~NFJ,U|3wi[jzXd5-bMC Reply-To: ftww@cs.su.oz.au Content-Type: text Content-Length: 3187 Status: RO > First, flags in maps that tell it to save changes back permantly, and > not in /tmp, would need to be added. This flag would also be needed for > safety deposit boxes and banks. An easy solution to that would be to have > some unique key that allows the player to pass through the door, but doesn't > destroy it. thus, only he can get to his stuff (and if he dies, whoever > finds that key and the matching door.) > > One problem with banks and deposit boxes I have, is that characters could > die an no one claim the stuff. Maps could become filled with junk as > this happens. The way I would like banks to work is almost exactly like I want deposits to work, so I'll lump them together. The idea is this: each bank/deposit place has a number of rooms. Each room can contain at most one player, so if someone is already in it, no other player can enter. When you enter, you see a pile of whatever you have already deposited in the room. e.g. for a bank, you might see a stack of gold coins; for a depository there could be scrolls, spellbooks, wands, food, etc. that the player has left there. The player can pick up and drop things to make adjustments. When the player leaves, the items left behind on the floor get saved into a special file in the player directory. This sort of eliminates the problem you mention in your last paragraph - it's not the maps that would become filled, but the player directory instead. How I would like to see this implemented is the following (new idea just occurred to me, so I apologise if it's obvious drivel): Each bank/depository needs only one room, which is an entrance to a new map. This map is marked as special in some way, so that the server creates a new instance of it each time someone uses the entrance. This means that at most one person could be on the map at a given time, because different people create different maps, and so end up in different places (although they look the same). This map would presumably be a small room, with a special archetype which loads the items from the player's deposits file and puts them into the room. And when the player leaves, the exit triggers two things: firstly, it saves the items currently in the room to the deposits file, and secondly the map is destroyed immediately, as there is no more need for it. Since these maps would in general be small, I don't see this will be much of a problem. To get around the overloading of the exit, the following could be done: the room could be constructed like a shop, and the teleporters trigger the loading/saving of the deposits file. Also, when the server notices a player leave a map marked special (and no more players are in it, which should be the case if the above scheme is followed), it knows it can destroy the map instead of keeping it around. I would appreciate any comments/suggestions about this. Cheers, Geoff. ------------------------------------------------------------------------------- Geoff Bailey (Fred the Wonder Worm) | Programmer by trade -- ftww@cs.su.oz.au | Gameplayer by vocation. ------------------------------------------------------------------------------- From crossfire-request Thu Mar 10 02:06:52 1994 Return-Path: Received: from lia.univ-savoie.fr by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 02:06:50 +0100 Received: from MERLIN (merlin.univ-savoie.fr) by lia.univ-savoie.fr (4.1/SMI-4.1) id AA11453; Thu, 10 Mar 94 02:04:07 +0100 Posted-Date: Thu, 10 Mar 1994 02:04:07 +0100 (MET) Date: Thu, 10 Mar 1994 02:04:07 +0100 (MET) From: Stefan Strobel Subject: 90.2 doesn't work, 90.1 crashes ... To: crossfire@ifi.uio.no Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Content-Transfer-Encoding: QUOTED-PRINTABLE Status: RO Hello I just installed crossfire on our sun4 with sunos 4.1.2 gcc is 2.5.8. in the 90.2 version we can't even connect to the server with a=20 crossclient. it dies immediately when the first client tries to conect.=20 with the 90.1 version it works for some minutes but after about 5 or 10=20 minutes the server crashes with either a sigbus or a segv. Does anybody else have these problems on a sun4 or is it supposed to run=20 fine ? what could we do to track down the problem ?=20 I already compiled it with debug. this is the output : LIA:local/crossfire/bin>./crossfire -server Reading bmaps...done (got 1944/1945/1945) arch-pass 1...done Setting up archetable...done loading treasure...done arch-pass 2...done Welcome to CrossFire, v0.90.1, copyright (C) 1992 Frank Tore Johansen. Can't open /usr/local/crossfire/lib/shutdown Can't open /usr/local/crossfire/lib/forbid Opening add user socket on 13326 Waiting for connections... Adding socket 5 from 193.48.121.48. socket[anon5]: version socket[anon5]: name guichard socket[guichard]: add arthur:0.0 Reading artifacts...Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 Last slot (249) is=20 done. Trying to load map /usr/local/crossfire/lib/maps/village/village. load_original_map: /usr/local/crossfire/lib/maps/village/village Switching to black and white. You have a black and white terminal. Matching fonts to crossfire: 1 (crossfire) socket[guichard]: quit Removing socket 5 Can't open /usr/local/crossfire/lib/players/fred.pl Adding socket 5 from 193.48.121.32. socket[anon5]: version socket[anon5]: name talbot socket[talbot]: set pixmaps socket[talbot]: add TERMX1:0.0 Switching to black and white. You have a black and white terminal. Building=20 ximages....................................................................= ...........................................................................= ...........................................................................= ...........................................................................= ..................................done socket[talbot]: quit Removing socket 5 Can't open /usr/local/crossfire/lib/players/steph.pl Trying to load map /usr/local/crossfire/lib/maps/village/kt.hus.1. load_original_map: /usr/local/crossfire/lib/maps/village/kt.hus.1 Couldn't change bolt into artifact. legal_art: !ring legal_art: !horn Trying to load map /usr/local/crossfire/lib/maps/village/guard_house. load_original_map: /usr/local/crossfire/lib/maps/village/guard_house Fleeing player is dead. Trying to load map /usr/local/crossfire/lib/maps/village/old_shop. load_original_map: /usr/local/crossfire/lib/maps/village/old_shop Couldn't change wand into artifact. Couldn't change waybread into artifact. Couldn't change booze into artifact. Couldn't change booze into artifact. Saving map /village/kt.hus.1 Saving map /village/old_shop Fleeing player had no enemy. Trying to load map /usr/local/crossfire/lib/maps/village/beginners.level. load_original_map: /usr/local/crossfire/lib/maps/village/beginners.level Couldn't change arrow into artifact. Saving map /village/kt.hus.1 Trying to load map /usr/local/crossfire/lib/maps/village/city_hall. load_original_map: /usr/local/crossfire/lib/maps/village/city_hall message: 582 message: 627 Couldn't change amulet into artifact. Saving map /village/guard_house Saving map /village/village Saving map /village/city_hall Saving map /village/beginners.level Saving map /village/village Fleeing player is dead. Trying to remove removed object. arch barbarian name steph race barbarian face barbarian.111 Str 17 Dex 11 Con 10 Wis 10 Cha 13 Int 9 hp 8 maxhp 8 sp 3 maxsp 3 exp 74 food 446 dam 15 wc 16 ac 9 armour 10 x 6 y 11 speed 1.000000 speed_left -0.126404 level 1 type 1 attacktype 1 carrying 126702 weight 71000 last_heal 34 last_sp 21 last_eat 12 run_away 25 alive 1 arch broadsword_2 name broadsword face bsword_2.111 dam 9 nrof 1 type 15 material 2 value 48 weight 17200 magic 2 last_sp 8 applied 1 been_applied 1 end arch mace name mace face mace_1.111 dam 7 nrof 1 type 15 material 2 value 35 weight 16000 last_sp 9 startequip 1 end arch horned_helmet name horned helmet face hornhelmet.111 ac 1 armour 2 nrof 1 type 34 material 18 value 12 weight 6000 last_heal 2 startequip 1 been_applied 1 end arch full_helmet name full helmet face fullhelmet.111 ac 1 armour 10 nrof 1 type 34 material 2 value 16 weight 12000 last_heal 10 applied 1 been_applied 1 end arch sack name Sack face sack.111 type 122 material 128 value 50 weight 2 container 1=CB=C0'=A6=A6B@=F7s`\d=D8 =A5,Lr=F7=EFp=A3=E8d 5 nrof 21 type 13 material 16 value 1 weight 500 need_an 1 is_turnable 1 end arch food name food face food.111 color_fg dark_orange food 200 nrof 10 type 6 material 32 value 10 weight 6500 identified 1 end end SIGBUS received Emergency save: fred Can't open /usr/local/crossfire/lib/highscore Couldn't write to highscore-list. : Permission denied steph Can't open /usr/local/crossfire/lib/highscore Couldn't write to highscore-list. : Permission denied Cleaning up... IOT trap Stefan Strobel (o o) ---------------------------------------ooO--(_)--Ooo-------- strobel@sun1.rz.fh-heilbronn.de=20 strobel@lia.univ-savoie.fr =20 100111.3000@compuserve.com =20 From crossfire-request Thu Mar 10 00:38:47 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 00:38:45 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id PAA00488 for crossfire@ifi.uio.no; Wed, 9 Mar 1994 15:38:44 -0800 From: Tyler Van Gorder Message-Id: <199403092338.PAA00488@corpse.ecst.csuchico.edu> Subject: what da hey? To: crossfire@ifi.uio.no Date: Wed, 9 Mar 1994 15:38:43 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 2349 Status: RO ok!...this is wierd. I can run crossfire without being in server mode... just from the server with no options.....and it works fine..... when I try to run in server mode and detatch.....it has problems. ei. a new player trys to come into hte game : they will see the crossfire windows for a brief second then it dies. I have tryed compiling with and without XPM defined....no luck either way. And yes I am fairly certain that I have a valid crossfire.cfb, crossfire.pix files. :< sigh. Tyler In the log we have : ======================== Begin New Server Session ======================== Opening add user socket on 13326 Waiting for connections... Waiting for connections... Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadPixmap (invalid Pixmap parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadPixmap (invalid Pixmap parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadPixmap (invalid Pixmap parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Emergency save: upchuck (failed) Fatal: Too many errors Emergency save: upchuck (failed) Cleaning up... Cleaning up... Exiting... From crossfire-request Wed Mar 9 22:16:00 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 22:15:57 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id NAA19976; Wed, 9 Mar 1994 13:15:37 -0800 From: Tyler Van Gorder Message-Id: <199403092115.NAA19976@corpse.ecst.csuchico.edu> Subject: Re: Flavours of unix To: mackrill@atuk.aspentec.com (Sam Mackrill : AspenTech UK) Date: Wed, 9 Mar 1994 13:15:37 -0800 (PST) Cc: crossfire@ifi.uio.no, mackrill@atuk.aspentec.com In-Reply-To: <0097B2C0.46FCF89F.5796@atuk.aspentec.com> from "Sam Mackrill : AspenTech UK" at Mar 9, 94 10:33:57 am X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 44 Status: RO compiled it on an HP735 running hpux. X11R5 From crossfire-request Wed Mar 9 16:51:13 1994 Return-Path: Received: from sfi.santafe.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 16:51:10 +0100 From: scott@santafe.edu Received: from coronado (coronado.santafe.edu) by sfi.santafe.edu (4.1/SMI-4.1) id AA09451; Wed, 9 Mar 94 08:57:02 MST Received: by coronado (4.1/SMI-4.1) id AA03822; Wed, 9 Mar 94 08:56:54 MST Date: Wed, 9 Mar 94 08:56:54 MST Message-Id: <9403091556.AA03822@coronado> To: roy@eckerd.edu (Jonathan Roy) Cc: crossfire@ifi.uio.no In-Reply-To: Your message at 19:18:49 on Tue, 8 March 1994 References: <9403090018.AA22107@acasun.eckerd.edu> Status: RO >>>>> "Jonathan" == Jonathan Roy writes: Jonathan> (Simple hack for avoiding the draw_color_pixmap bug... Use Jonathan> -b and play in black and white. :) ) it would be really nice if people (or at least jonathan) who use this list would please use subjects on their messages. Scott From crossfire-request Wed Mar 9 16:20:55 1994 Return-Path: Received: from munnari.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 16:20:52 +0100 Received: from orthanc.cs.su.OZ.au by munnari.oz.au with MHSnet (5.83--+1.3.1+0.50) id AA14055; Thu, 10 Mar 1994 01:20:20 +1000 (from ftww@orthanc.cs.su.OZ.au) Message-Id: <9403091520.14055@munnari.oz.au> Subject: Re: Weight To: crossfire@ifi.uio.no Date: Thu, 10 Mar 1994 01:19:31 +1000 (EST) From: "Fred the Wonder Worm" In-Reply-To: from "Petri Heinil{" at Mar 9, 94 04:32:55 pm X-Face: )\c`u_%V|7EQUDUt%5v'IJ?=@^Wf^<#,~CjzL`/2q0=-O6XW/Z8A2j.kgg:| 7|YZPSxy}rIuw8qD|/cQZ9^6kb:1XLleXhOl-U>(c~d`bC)%7FItZOUEw?=x%TBQ~NFJ,U|3wi[jzXd5-bMC Reply-To: ftww@cs.su.oz.au Content-Type: text Content-Length: 712 Status: RO > On Wed, 9 Mar 1994, Benjamin Thomas Ketteridge wrote: > >> In the end, do we want crossfire characters to be restricted to 'farties', >> or do we want a game where we can pretend to be heroes? > > If you goto smash a big dragon you have to be some kind of a hero. > But I think, to carry 1000kg's is more to be a horse than a hero :) Well, I want a game where I can pretend to be a horse. :) Cheers, Geoff. ------------------------------------------------------------------------------- Geoff Bailey (Fred the Wonder Worm) | Programmer by trade -- ftww@cs.su.oz.au | Gameplayer by vocation. ------------------------------------------------------------------------------- From crossfire-request Wed Mar 9 15:45:07 1994 Return-Path: Received: from sognsvann.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Wed, 9 Mar 1994 15:45:03 +0100 From: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= MIME-Version: 1.0 Received: from localhost by sognsvann.ifi.uio.no ; Wed, 9 Mar 1994 15:45:01 +0100 Date: Wed, 9 Mar 1994 15:44:57 +0100 To: ftww@cs.su.oz.au Cc: crossfire@ifi.uio.no Subject: Re: Weight In-Reply-To: "Fred the Wonder Worm" 's message of Wed, 9 Mar 1994 09:48:51 +1000 (EST) References: <9403082349.7553@munnari.oz.au> Message-ID: Status: RO >The depository would contain safe deposit boxes where people could leave >items. There would be a daily charge for this sort of thing, and you can't >retrieve your items until you've paid the costs. > >Opinions? And, the items could be put out for sale if they're not picked up within one week of the owners death. - Regards, Bjorn. From crossfire-request Wed Mar 9 15:33:08 1994 Return-Path: Received: from kaisa.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 15:33:06 +0100 Received: from localhost (hevi@localhost) by kaisa.it.lut.fi (8.6.5/8.6.5/1.12.kim) id QAA01242; Wed, 9 Mar 1994 16:32:56 +0200 Date: Wed, 9 Mar 1994 16:32:55 +0200 (EET) From: Petri Heinil{ Subject: Re: Weight To: crossfire@ifi.uio.no In-Reply-To: <12697.763208784@mailhost.aber.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Wed, 9 Mar 1994, Benjamin Thomas Ketteridge wrote: > In the end, do we want crossfire characters to be restricted to 'farties', or > do we want a game where we can pretend to be heroes? If you goto smash a big dragon you have to be some kind of a hero. But I think, to carry 1000kg's is more to be a horse than a hero :) ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Wed Mar 9 11:35:19 1994 Return-Path: Received: from atuk.aspentec.com by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 11:35:17 +0100 Received: by atuk.aspentec.com (MX V3.3 VAX) id 5796; Wed, 09 Mar 1994 10:32:45 GMT Date: Wed, 09 Mar 1994 10:33:57 GMT From: "Sam Mackrill : AspenTech UK" To: crossfire@ifi.uio.no CC: mackrill@atuk.aspentec.com Message-ID: <0097B2C0.46FCF89F.5796@atuk.aspentec.com> Subject: Re: Flavours of unix Status: RO > Is there any chance we could find otu what flavours of unix there out there that crossfire is running on. I am currently on Solaris 2.3. > > Cheers, > Damien > I have built versions 0.90.1 and 0.90.2 on an RS/6000 with AIX 1.2 X11R4 Sam From crossfire-request Wed Mar 9 11:25:39 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id ; Wed, 9 Mar 1994 11:25:35 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Wed, 9 Mar 1994 10:24:48 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA03054; Wed, 9 Mar 94 10:21:11 GMT To: "Rupert G. Goldie" Cc: kjetilho@ifi.uio.no, crossfire@ifi.uio.no, btk@aber.ac.uk Subject: Re: Weight In-Reply-To: Your message of "Wed, 09 Mar 1994 10:23:50 +1000." <199403090023.AA09173@eden-valley.aaii.oz.AU> Date: Wed, 09 Mar 1994 10:26:24 +0000 Message-Id: <12697.763208784@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Kjetil Torgrim Homme wrote: >> Uhm - something should be done about the weights... It is not unusual >> that people carry around 10 times their own weight. >> >> I think that we can simply decrease the amount carriable by a >> player. A Str 18 character is just too strong, I think. I mean - you >> shouldn't be able to walk around with a plate mail, a mithril armour, >> a high shield, the Excalibur, Holy Avenger etc. etc. without being >> hampered. >> Rupert Goldie replied: > But let us not forget that Crossfire is a game and that playability is more > important than realism. Maybe players can carry too much, but I don't think > we need to reduce it too much. Also, if as some people seem to want, crossfire comes out of AD&D and not real life, perhaps we should remember that AD&D stats are intended for heroes, as, I think, crossfire characters should be. In AD&D, the _average_ stats are around 9-12 and those are described as 'real people's stats' and characters (depending on the method you use to roll up characters) stats average around 15 (same as crossfire). I think it says more about this in the AD&D Players Handbook (well it does in mine, which is pretty old - the original hardback A4 book). In the end, do we want crossfire characters to be restricted to 'farties', or do we want a game where we can pretend to be heroes? (for those not British, or who haven't come across Ben Elton (or Motormouth), 'farties' are average people - non-models and non-stars!), Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Wed Mar 9 11:15:20 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 11:15:18 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Wed, 9 Mar 1994 10:14:31 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA03037; Wed, 9 Mar 94 10:10:55 GMT To: ftww@au.oz.su.cs Cc: crossfire@ifi.uio.no Subject: Re: Weight In-Reply-To: Your message of "Wed, 09 Mar 1994 09:48:51 +1000." <9403082349.7553@munnari.oz.au> Date: Wed, 09 Mar 1994 10:16:07 +0000 Message-Id: <12359.763208167@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Geoff Bailey wrote: > Well, I'll throw a little more talk into the arena. I think we could get > by with two things: a bank, and a depository. The bank will keep money > for you (but won't give interest). If you die, your next character can > inherit your bank account (minus a handling fee, perhaps). > > The depository would contain safe deposit boxes where people could leave > items. There would be a daily charge for this sort of thing, and you can't > retrieve your items until you've paid the costs. I like these ideas a lot!!!!! A very sensible extension of the idea of shops really. Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Wed Mar 9 01:13:44 1994 Return-Path: Received: from nico.aarnet.edu.au by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:13:41 +0100 Received: from jatz.aarnet.edu.au (jatz.aarnet.edu.au [139.130.204.4]) by nico.aarnet.edu.au (8.6.5/8.6.4) with SMTP id KAA20214 for ; Wed, 9 Mar 1994 10:12:31 +1000 Received: from dme.nt.gov.au (adit.dme.nt.gov.au [155.205.3.15]) by jatz.aarnet.edu.au (8.6.5/1.2) with SMTP id KAA26667 for ; Wed, 9 Mar 1994 10:13:11 +1000 Received: from golem.dme.nt.gov.au by dme.nt.gov.au (4.1/SMI-4.1) id AA20922; Wed, 9 Mar 94 09:43:10 CST Received: from daml.dme by golem.dme.nt.gov.au (4.1/SMI-4.1) id AA22894; Wed, 9 Mar 94 09:42:47 CST Received: by daml.dme (5.0/SMI-SVR4) id AA00867; Wed, 9 Mar 1994 09:44:22 --9-30 Date: Wed, 9 Mar 1994 09:44:22 --9-30 From: daml@golem.dme.nt.gov.au (Damien Lunsford 61-89-895256) Message-Id: <9403090014.AA00867@daml.dme> To: crossfire@ifi.uio.no Subject: Flavours of unix X-Sun-Charset: US-ASCII Content-Length: 154 Status: RO Is there any chance we could find otu what flavours of unix there out there that crossfire is running on. I am currently on Solaris 2.3. Cheers, Damien From crossfire-request Wed Mar 9 17:33:39 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 17:33:37 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA06710; Wed, 9 Mar 1994 11:30:28 +0500 Date: Wed, 9 Mar 1994 11:30:28 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403091630.AA06710@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Bug reports Content-Length: 134 Status: RO I'll send all bug reports directly to master@rahul.net for now on, and spare the list all the messy details... SOrry about that. :) From crossfire-request Wed Mar 9 06:37:41 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 06:37:30 +0100 Received: by bolero.rahul.net id AA17746 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 21:37:27 -0800 Date: Tue, 8 Mar 1994 21:37:27 -0800 From: Mark Wedel Message-Id: <199403090537.AA17746@bolero.rahul.net> To: crossfire@ifi.uio.no, rgg@aaii.oz.au Subject: Re: 0.90.2pl1 ? Status: RO I agree - 0.90.3 would be a better name. I like the convention where the smallest number (as the number scheme is right now) should be the patch level, with the larger (90 in this case) the version number. I just don't want to bump the version number up too fast, because version 1.00 is supposed to be the official public release, and that number should come after 0.99.x. I don't want to get into 0.100.x, 0.101.x, etc. I will probably put the new version up for ftp this weekend. This one really is just a big fix version - I can't think of any additions as of right now. This one might also have few enough changes to warrant a patch file for those who want that instead of grabbing the entire archive. --Mark From crossfire-request Wed Mar 9 05:27:37 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 05:27:34 +0100 Received: by bolero.rahul.net id AA12060 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 20:27:30 -0800 Date: Tue, 8 Mar 1994 20:27:30 -0800 From: Mark Wedel Message-Id: <199403090427.AA12060@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: Classes and abilities. Status: RO Back to this discussion about how race does not make much difference: What might be an interesting change would be to have a chance of mage spell failure based upon how much metal armor the character is wearing. So if the character has 60% absorption from metal armor, he has 60% spell failure. This way, a character could become a fighter in a tin can, but not if he wants to cast any spells. Likewise, he could wear leather armor, and other non metal armour (maybe add wooden shields and leather helms) without problem. I know one old gamesystem had it so that mages could not wear ferrous based armor, but silver or copper armor could be worn. Both of these being a lot more expensive, and offering less protection than the comparable steel armor. The problem with slower spellpoint regeneration, is that at least what I do, is after I used up my spellpoints, I either leave the map, or find a safe place on the map, and just take off all the armor and regenerate the spellpoints at a reasonable rate. As such, except for speed, there is little reason for my spellcasting characters not to wear very heavy armor. --Mark From crossfire-request Wed Mar 9 05:23:28 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 05:23:22 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA13000; Wed, 9 Mar 1994 14:22:52 +1000 Date: Wed, 9 Mar 1994 14:22:52 +1000 From: "Rupert G. Goldie" Message-Id: <199403090422.AA13000@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no Subject: Re: 0.90.2pl1 ? Status: RO > With all these little bug messages, maybe there can be a 90.2pl1 put up in > a few days with all the bugs patched out? :) > > I can't keep track of what to fix... > > I think 0.90.3 would be a better version name. I think we should avoid the Linux kernel type naming (eg 0.99 pl15j). Or maybe, if it's reasonably stable, it should be 0.91 as it has a lot of new features over 0.90.0 Rupert From crossfire-request Wed Mar 9 05:17:45 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 05:17:16 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA12885; Wed, 9 Mar 1994 14:16:30 +1000 Date: Wed, 9 Mar 1994 14:16:30 +1000 From: "Rupert G. Goldie" Message-Id: <199403090416.AA12885@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, daml@golem.dme.nt.gov.au Subject: Re: Flavours of unix Status: RO > Is there any chance we could find otu what flavours of unix there out there that crossfire is running on. I am currently on Solaris 2.3. > > Cheers, > Damien > I have built 0.90.2 under SunOS 4.1.3. I built 0.90.1 under Ultrix 4.2a. I built 0.89.3 under Linux. I have a DEC Alpha running OSF/1 1.3 that I have'nt tried building Crossfire under, but I will at some stage (that will flush out all the 64bit problems 8-) Rupert From crossfire-request Wed Mar 9 02:00:41 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 02:00:37 +0100 Received: by bolero.rahul.net id AA28592 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 17:00:34 -0800 Date: Tue, 8 Mar 1994 17:00:34 -0800 From: Mark Wedel Message-Id: <199403090100.AA28592@bolero.rahul.net> To: crossfire@ifi.uio.no, rgg@aaii.oz.au, roy@eckerd.edu Subject: Re: BINDIR loop Status: RO Simple fix. In the server/Imakefile, remove the BINDIR = ${C_BINDIR} line, and change the BINDIR in InstallNormalProgram to C_BINDIR. I think BINDIR was needed when the Imakefile was using ComplexProgramTarget. --Mark From crossfire-request Wed Mar 9 01:57:06 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:56:20 +0100 Received: by bolero.rahul.net id AA28079 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 16:56:13 -0800 Date: Tue, 8 Mar 1994 16:56:13 -0800 From: Mark Wedel Message-Id: <199403090056.AA28079@bolero.rahul.net> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Color pixmap crash. Status: RO Or you could just use normal pixmaps (-pix instead of -xpm). -xpm will use the same function on a monochrome or color screen. Just on a monochrome screen, you obviously won't see colors. Its not like using the -b options when using fonts or standard pixmaps, in which they do use specialized routines. --Mark From crossfire-request Wed Mar 9 01:51:46 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:51:44 +0100 Received: by bolero.rahul.net id AA27559 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 16:51:42 -0800 Date: Tue, 8 Mar 1994 16:51:42 -0800 From: Mark Wedel Message-Id: <199403090051.AA27559@bolero.rahul.net> To: crossfire@ifi.uio.no, tvangod@ecst.csuchico.edu Subject: Re: player_color ? Status: RO I'll look into all these bugs.. Apparantly crossfire 0.90.2 created more bugs than it fixed... PLAYER_COLORS might become obsolete at sometime, as it has no meaning if XPM images are used. --Mark From crossfire-request Wed Mar 9 01:41:23 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:41:20 +0100 Received: by bolero.rahul.net id AA26894 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 16:41:08 -0800 Date: Tue, 8 Mar 1994 16:41:08 -0800 From: Mark Wedel Message-Id: <199403090041.AA26894@bolero.rahul.net> To: bairds@ee.pdx.edu, peterm@soda.berkeley.edu Subject: Re: 0.92 Bug? Cc: crossfire@ifi.uio.no, eneq@meryl.csd.uu.se Status: RO With the resurrection code, however, no death is permanent anymore. If (as I understand it), a player with raise dead/reincarnation/resurrection comes acros your gravestone and cast the spell, that person is alive again (loses a con point or two, or maybe race change, and all items are lost..) --Mark From crossfire-request Wed Mar 9 01:34:34 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:34:31 +0100 Received: by bolero.rahul.net id AA26483 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 16:34:26 -0800 Date: Tue, 8 Mar 1994 16:34:26 -0800 From: Mark Wedel Message-Id: <199403090034.AA26483@bolero.rahul.net> To: elsbernd@dfki.uni-kl.de Subject: Re: Solaris 2.3 Cc: crossfire@ifi.uio.no Status: RO I'll put those patches into the master version.. --Mark From crossfire-request Wed Mar 9 01:32:06 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:31:53 +0100 Received: by bolero.rahul.net id AA26330 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 16:31:19 -0800 Date: Tue, 8 Mar 1994 16:31:19 -0800 From: Mark Wedel Message-Id: <199403090031.AA26330@bolero.rahul.net> To: Petri.Heinila@lut.fi, crossfire@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: Weight Status: RO If how much a player can carry is going to be re-done, then the weights for most objects should also be re-done. IT seems to me that most of the weights become almost reasonable if you think of them in pounds and not kilograms. A bottle of booze weights 3.5 kg's or something? Plate weighs 100 kgs? I think a better method for weight would be have a maximum any player can carry. Right now, a player can keep loading up indefinately. Sure, he may only move .05, but if he has cleared out the area, no big deal. I have had some characters get loaded up to 1500 kg's, and putz along back to down. So in summary: The weight values for most items seems a bit high, and a maximum carry might be a good way to control it. --Mark From crossfire-request Wed Mar 9 01:28:32 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id ; Wed, 9 Mar 1994 01:24:58 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA09173; Wed, 9 Mar 1994 10:23:50 +1000 Date: Wed, 9 Mar 1994 10:23:50 +1000 From: "Rupert G. Goldie" Message-Id: <199403090023.AA09173@eden-valley.aaii.oz.AU> To: kjetilho@ifi.uio.no Subject: Re: Weight Cc: crossfire@ifi.uio.no Status: RO > Uhm - something should be done about the weights... It is not unusual > that people carry around 10 times their own weight. > > I think that we can simply decrease the amount carriable by a > player. A Str 18 character is just too strong, I think. I mean - you > shouldn't be able to walk around with a plate mail, a mithril armour, > a high shield, the Excalibur, Holy Avenger etc. etc. without being > hampered. > But let us not forget that Crossfire is a game and that playability is more important than realism. Maybe players can carry too much, but I don't think we need to reduce it too much. Rupert From crossfire-request Wed Mar 9 01:23:32 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:23:23 +0100 Received: by bolero.rahul.net id AA25818 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 8 Mar 1994 16:23:16 -0800 Date: Tue, 8 Mar 1994 16:23:16 -0800 From: Mark Wedel Message-Id: <199403090023.AA25818@bolero.rahul.net> To: mackrill@atuk.aspentec.com, tvangod@ecst.csuchico.edu Subject: Re: Crossfire 0.90.2 compiling Cc: crossfire@ifi.uio.no Status: RO Tyler Van Gorder writes: >Sam, If you do a "make proto" in the server directory the makefile will use >cextract to generate a new sproto.h for you. > >same is true in the common dir, accept that it generates proto.h I try to do make proto's, but it will only put the functions in which I have defined. I don't even know if it is possible to define all functions and still have it work, as there are a couple versions of some functions. Best bet, if you turn on options, is to do a make proto. I suppose it depends on the compiler. With gcc, if the function doesn't have a prototype, you tend to get a warning, and not a crash. --Mark From crossfire-request Wed Mar 9 01:20:39 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:20:24 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA09117; Wed, 9 Mar 1994 10:19:35 +1000 Date: Wed, 9 Mar 1994 10:19:35 +1000 From: "Rupert G. Goldie" Message-Id: <199403090019.AA09117@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: BINDIR loop Status: RO > Problem in the Imakefile in ./server. We kept getting an error message > about loop detected. In the other Makefiles BINDIR was /usr/bin/X11, > but in server it was BINDIR = ${C_BINDIR} which was the loop... > (Maybe it's (C_BINDIR), you get the idea. :) > > (We could have caused this, but maybe someone more knowledgable in Imakefiles > can check it... > > I have had this problem as well. The quick fix is to make sure that you #define CBinDir in crosssite.def to your bin directory. The Imakefile probably needs to be fixed properly, but I haven't looked into that yet. Rupert From crossfire-request Wed Mar 9 00:49:19 1994 Return-Path: Received: from munnari.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 00:49:14 +0100 Received: from orthanc.cs.su.OZ.au by munnari.oz.au with MHSnet (5.83--+1.3.1+0.50) id AA07553; Wed, 9 Mar 1994 09:49:08 +1000 (from ftww@orthanc.cs.su.OZ.au) Message-Id: <9403082349.7553@munnari.oz.au> Subject: Re: Weight To: crossfire@ifi.uio.no Date: Wed, 9 Mar 1994 09:48:51 +1000 (EST) From: "Fred the Wonder Worm" In-Reply-To: <199403081348.PAA24390@cc.lut.fi> from "Tero Haatanen" at Mar 8, 94 03:48:27 pm X-Face: )\c`u_%V|7EQUDUt%5v'IJ?=@^Wf^<#,~CjzL`/2q0=-O6XW/Z8A2j.kgg:| 7|YZPSxy}rIuw8qD|/cQZ9^6kb:1XLleXhOl-U>(c~d`bC)%7FItZOUEw?=x%TBQ~NFJ,U|3wi[jzXd5-bMC Reply-To: ftww@cs.su.oz.au Content-Type: text Content-Length: 1455 Status: RO > From: Kjetil Torgrim Homme > >> Too convenient. And in any case, IMHO, "dollars" doesn't fit into the >> Crossfire world. I'd much rather see an even more expensive form of >> gems in the game. (some people carry around ~100 kilos of diamonds) >> Uhm - something should be done about the weights... It is not unusual >> that people carry around 10 times their own weight. > > The current money systems works quite well and diamonds are valuable > enough. The problem is that players carry all their treasures with them > all the time. We need those saved maps (inns, houses and banks). > [ hmm, much talk but little code :( ] Well, I'll throw a little more talk into the arena. I think we could get by with two things: a bank, and a depository. The bank will keep money for you (but won't give interest). If you die, your next character can inherit your bank account (minus a handling fee, perhaps). The depository would contain safe deposit boxes where people could leave items. There would be a daily charge for this sort of thing, and you can't retrieve your items until you've paid the costs. Opinions? Cheers, Geoff. ------------------------------------------------------------------------------- Geoff Bailey (Fred the Wonder Worm) | Programmer by trade -- ftww@cs.su.oz.au | Gameplayer by vocation. ------------------------------------------------------------------------------- From crossfire-request Tue Mar 8 23:08:55 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 23:08:53 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id OAA25283 for crossfire@ifi.uio.no; Tue, 8 Mar 1994 14:08:50 -0800 From: Tyler Van Gorder Message-Id: <199403082208.OAA25283@corpse.ecst.csuchico.edu> Subject: player_color ? To: crossfire@ifi.uio.no Date: Tue, 8 Mar 1994 14:08:50 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 301 Status: RO in login.c there are references to a player_color in the player struct. It is not there......was someone planning on doing something with this? Letting players choose their color works just fine without that addition to the player struct. This is only a problem if you define PLAYER_COLORS Tyler From crossfire-request Tue Mar 8 22:59:36 1994 Return-Path: Received: from ursula.ee.pdx.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 22:59:34 +0100 Received: from potrzebie.ee.pdx.edu by ursula.ee.pdx.edu (4.1/SMI-4.1) id AA01209; Tue, 8 Mar 94 14:00:53 PST From: bairds@ee.pdx.edu (Scarrow) Message-Id: <9403082200.AA01209@ursula.ee.pdx.edu> Subject: Re: 0.92 Bug? To: peterm@soda.berkeley.edu (Peter Mardahl) Date: Tue, 8 Mar 1994 14:03:04 -0800 (PST) Cc: crossfire@ifi.uio.no, eneq@meryl.csd.uu.se In-Reply-To: <199403082051.MAA18255@soda.berkeley.edu> from "Peter Mardahl" at Mar 8, 94 12:51:14 pm X-Mailer: ELM [version 2.4 PL23beta] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 640 Status: RO > If there's any problem with dying, > please switch to the NOT_PERMADEATH > mode. > > Apparently the soda resurrection code is buggy. > I'll look into it..... I'm a little confused here. I guess it happens from having too many negatives too close. Doesn't #define NOT_PERMADEATH put in the code to make it so that you don't really die, but rather lose a bunch of stuff and whatnot and then get resurrected? I prefer that death be permanent and was just wondering as to the appropriate configuration of NOT_PERMADEATH. I'd rather fix the code if it's needed to get permanent death working, as I very strongly prefer permanent death. From crossfire-request Tue Mar 8 22:59:31 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 22:59:28 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA26922 for crossfire@ifi.uio.no; Tue, 8 Mar 1994 13:59:24 -0800 Date: Tue, 8 Mar 1994 13:59:24 -0800 From: Peter Mardahl Message-Id: <199403082159.NAA26922@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: other resurrection stuff Status: RO Some of the other resurrection stuff is broken as well. I'll send fixes as I get them. The fix to player.c will end the crashing, but reincarnation, at least, is not working right now. PeterM From crossfire-request Tue Mar 8 22:57:01 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 22:56:28 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA26644 for crossfire@ifi.uio.no; Tue, 8 Mar 1994 13:56:15 -0800 Date: Tue, 8 Mar 1994 13:56:15 -0800 From: Peter Mardahl Message-Id: <199403082156.NAA26644@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: bug in player.c: fix Status: RO Yipe, I didn't mean to send that last yet.... here's the fix.... replace player.c: (the entire file) ---------------------------------------------------------------- /* * static char *rcsid_player_c = * "$Id: player.c,v 1.24 1994/03/03 06:17:22 master Exp master $"; */ /* CrossFire, A Multiplayer game for X-windows Copyright (C) 1992 Frank Tore Johansen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author can be reached via e-mail to frankj@ifi.uio.no. */ #include #include #include #ifndef __CEXTRACT__ #include #endif #include #include #include extern spell spells[NROFREALSPELLS]; void display_motd(object *op) { #ifdef MOTD char buf[MAX_BUF]; FILE *fp; int comp; sprintf(buf,"%s/%s",LibDir,MOTD); if((fp=open_and_uncompress(buf,0,&comp))==NULL) { return; } while(fgets(buf,MAX_BUF,fp)!=NULL) { char *cp; if(*buf=='#') continue; cp=strchr(buf,'\n'); if(cp!=NULL) *cp='\0'; draw_info(op,buf); } close_and_delete(fp, comp); draw_info(op," "); #endif } int playername_ok(char *cp) { for(;*cp!='\0';cp++) if(!((*cp>='a'&&*cp<='z')||(*cp>='A'&&*cp<='Z'))&&*cp!='-'&&*cp!='_') return 0; return 1; } int add_player(char *disp, char *username, mapstruct *m) { player *p; char buf[MAX_BUF],*cp,*defname = "nobody"; struct passwd *pwent; if (username == NULL) { pwent = getpwuid(getuid()); if (pwent) username = pwent->pw_name; else username = defname; } init_beforeplay(); /* Make sure everything is ready */ if(m == NULL) m = ready_map_name(first_map_path,0); if(m == NULL) fatal(MAP_ERROR); m->timeout = MAP_TIMEOUT; /* Just in case we fail to add the player */ m->players++; p=get_player_ob(); p->name=add_string(disp); p->username = strdup_local(username); p->writing=0, p->weapon_sp=0,p->last_weapon_sp= -1; p->last_armour= (-1); p->has_hit=0; p->scroll_inv=0,p->scroll_look=0, strcpy(p->format_inv,"%-24.24s%-6s"); /* This can be changed by resize */ strcpy(p->format_look,p->format_inv); p->inv_size=INV_SIZE; p->look_size=LOOK_SIZE; p->inv_chars=30; p->look_chars=30; p->barlength_inv=BARLENGTH_INV; p->barlength_look=BARLENGTH_LOOK; p->last_scroll_inv=p->last_scroll_look=1, p->scrollsize_inv= p->scrollsize_look= p->scrollsize_hp=p->scrollsize_sp= p->scrollsize_food=p->scrollstart_inv= p->scrollstart_look=0, p->nrofdrawn_inv=0,p->nrofdrawn_look=0; p->peaceful=1; /* default peaceful */ p->do_los=1; p->scroll=0; /* default without scroll */ p->split_window=default_split_window; /* See -w flag */ p->last_weight= -1; p->freeze_inv=p->freeze_look=0; p->viewmap=0; p->mapres=1; p->mapdelx[0]= -1; #ifdef EXPLORE_MODE p->explore=0; #endif #ifdef SHOP_LISTINGS p->menu = NULL; #endif if(use_pixmaps) p->use_pixmaps = 1; if (color_pix) { p->use_pixmaps = 1; p->color_pixmaps = 1; } strncpy(buf,disp,MAX_BUF); if(strchr(buf,':')==NULL) strcat(buf,":0"); if(get_root_display(p,buf) || get_game_display(p,buf) || get_stats_display(p,buf) || get_info_display(p,buf) || get_inv_display(p,buf) || get_look_display(p,buf) || get_message_display(p,buf)) { m->players--; free_player(p); return 1; } /* Is there any reason that the values checked for in the if statements * need to be re-set below them? MSW (master@rahul.net) */ if (p->color_pixmaps) { p->color_pixmaps = 1; p->use_pixmaps = 1; /* We pass the player to ReadPixmaps because both the pixmaps * and the mask value for it needs to be set. Could only * return one, and since the mask is created at the same time * as the pixmap.... */ ReadPixmaps(p); } else if(p->use_pixmaps) { p->use_pixmaps = 1; p->pixmaps = ReadBitmaps (p->gdisp); } load_default_keys(p); setuperrors(); Protocol_atom = XInternAtom(p->gdisp, "WM_PROTOCOLS", False); Kill_atom = XInternAtom(p->gdisp, "WM_DELETE_WINDOW", False); if(!p->split_window) XSetWMProtocols(p->gdisp, p->win_root, &Kill_atom, 1); else { /* I hope this is correct... */ XSetWMProtocols(p->gdisp, p->win_game, &Kill_atom, 1); XSetWMProtocols(p->gdisp, p->win_stats, &Kill_atom, 1); XSetWMProtocols(p->gdisp, p->win_info, &Kill_atom, 1); XSetWMProtocols(p->gdisp, p->win_inv, &Kill_atom, 1); XSetWMProtocols(p->gdisp, p->win_look, &Kill_atom, 1); XSetWMProtocols(p->gdisp, p->win_message, &Kill_atom, 1); } free_string(p->ob->name); p->ob->name = NULL; free_object(p->ob); p->ob=get_player(p,m); add_friendly_object(p->ob); if ((cp = XGetDefault(p->gdisp, name, "wimpy")) != NULL) p->ob->run_away = atoi(cp); #ifdef SOUND_EFFECTS if ((cp = XGetDefault(p->gdisp, name, "sounds")) != NULL) { if (!strcmp("on", cp) || !strcmp("yes", cp)) p->rplay_fd = init_disp_sound(disp); else if (!strcmp("off", cp) || !strcmp("no", cp)) p->rplay_fd = 0; } else p->rplay_fd = init_disp_sound(disp); LOG(llevDebug, "Rplay fd: %d\n", p->rplay_fd); play_sound_player_only(p, SOUND_NEW_PLAYER); #endif #ifdef MOTD display_motd(p->ob); #endif #ifndef SAVE_PLAYER draw_info(p->ob,"Welcome, Brave Warrior!"); draw_info(p->ob," "); Roll_Again(p->ob); #endif if((cp=XGetDefault(p->gdisp,name,"name"))!=NULL&&check_name(p,cp)) { if(p->ob->name!=NULL) free_string(p->ob->name); p->ob->name=add_string(cp); #ifdef SAVE_PLAYER remove_lock(p); get_password(p->ob); #endif p->name_changed=1; } else { #ifdef SAVE_PLAYER get_name(p->ob); #endif cp=strchr(buf,'.'); if(cp!=NULL) *cp='\0'; cp=strchr(buf,':'); if(cp!=NULL) *cp='\0'; p->ob->name=add_string(buf); p->name_changed=0; } if((cp=XGetDefault(p->gdisp,name,"peaceful"))!=NULL) if(!strcmp("on",cp)||!strcmp("yes",cp)) p->peaceful=1; else if(!strcmp("off",cp)||!strcmp("no",cp)) p->peaceful=0; if((cp=XGetDefault(p->gdisp,name,"berzerk"))!=NULL) if(!strcmp("on",cp)||!strcmp("yes",cp)) p->berzerk=1; else if(!strcmp("off",cp)||!strcmp("no",cp)) p->berzerk=0; if((cp=XGetDefault(p->gdisp,name,"scroll"))!=NULL) if(!strcmp("on",cp)||!strcmp("yes",cp)) p->scroll=1; else if(!strcmp("off",cp)||!strcmp("no",cp)) p->scroll=0; if((cp=XGetDefault(p->gdisp,name,"title"))!=NULL && strlen(cp)own_title, cp); else p->own_title[0]='\0'; return 0; } /* * get_player_archetype() return next player archetype from archetype * list. Not very efficient routine, but used only creating new players. * Note: there MUST be at least one player archetype! */ archetype *get_player_archetype(archetype* at) { archetype *start = at; for (;;) { if (at==NULL || at->next==NULL) at=first_archetype; else at=at->next; if(at->clone.type==PLAYER) return at; if (at == start) { LOG (llevError, "No Player achetypes\n"); exit (-1); } } } object *get_player(player *p, mapstruct *m) { object *op=arch_to_object(get_player_archetype(NULL)); int i; p->loading = NULL; op->map=m; if(m->in_memory != MAP_IN_MEMORY) { p->loading = m; p->new_x = 0; p->new_y = 0; p->removed = 0; op->x=0; op->y=0; } else { i=find_free_spot(NULL,m,EXIT_X(m->map_object),EXIT_Y(m->map_object), 0,SIZEOFFREE); op->x=EXIT_X(m->map_object)+freearr_x[i]; op->y=EXIT_Y(m->map_object)+freearr_y[i]; } p->fire_on=0,p->run_on=0; /* p->face=0; op->face=classarch[p->face]->faces[0]; */ p->count=0; p->count_left=0; p->prev_cmd=' '; p->prev_fire_on=0; p->mode=0; p->berzerk=1; p->idle=0; *p->maplevel=0; #if 0 op->type=PLAYER; SET_ALIVE(op); op->speed=0.5; op->stats.exp=0; op->stats.food=500; op->weight=70000; /* 70 Kg. */ op->attacktype=AT_PHYSICAL; #endif op->run_away = 25; /* Then we panick... */ op->contr=p; /* this aren't yet in archetype */ op->speed_left=0.5; op->direction=0; op->stats.wc=2; op->run_away = 25; /* Then we panick... */ roll_stats(op); p->state=ST_ROLL_STAT; clear_los(op); p->last_stats.Str=0, p->last_stats.Dex=0, p->last_stats.Int=0, p->last_stats.Con=0, p->last_stats.Wis=0, p->last_stats.Cha=0; p->last_stats.hp=0, p->last_stats.maxhp=0; p->last_stats.wc=0, p->last_stats.ac=0; p->last_stats.sp=0, p->last_stats.maxsp=0; p->last_stats.exp= -1,p->last_stats.food=0; p->digestion=0,p->gen_hp=0,p->gen_sp=0; p->last_spell= -1; p->last_value= -1; p->last_speed= -1; p->shoottype=0,p->shootstrength=5; p->last_shoot= -1; p->listening=9; p->golem=NULL; p->last_used=NULL; p->last_used_id=0; #if 0 strncpy(p->title,classname[0],MAX_NAME); op->race = add_string (classname[0]); #else strncpy(p->title,op->arch->clone.name,MAX_NAME); op->race = add_string (op->arch->clone.race); #endif (void)memset((void *)op->contr->drawn,'\0', sizeof(Fontindex)*(WINRIGHT-WINLEFT+1)*(WINLOWER-WINUPPER+1)); for(i=0;iknown_spells[i]= -1; p->nrofknownspells=0; p->chosen_spell = -1; draw_all_inventory(op); draw_all_look(op); return op; } object *get_nearest_player(object *mon) { object *op = NULL; objectlink *ol; int lastdist,tmp; for(ol=first_friendly_object,lastdist=1000;ol!=NULL;ol=ol->next) { if((ol->ob->type==PLAYER && ol->ob->contr->state) ||((ol->ob->invisible&&QUERY_FLAG(ol->ob,FLAG_UNDEAD)==QUERY_FLAG(mon,FLAG_UNDEAD)) &&!QUERY_FLAG(mon,FLAG_SEE_INVISIBLE))||ol->ob->map!=mon->map) continue; tmp=distance(ol->ob,mon); if(lastdist>tmp) { op=ol->ob; lastdist=tmp; } } return op; } int path_to_player(object *mon, object *pl,int mindiff) { int dir,x,y,diff; dir=find_dir_2(mon->x-pl->x,mon->y-pl->y); x=mon->x+freearr_x[dir],y=mon->y+freearr_y[dir]; if(mon->value) x++; diff=isqrt((x-pl->x)*(x-pl->x)+(y-pl->y)*(y-pl->y)); if(diff 0) { if(blocked(mon->map,x,y)) return 0; x+=freearr_x[dir],y+=freearr_y[dir]; } return dir; } void give_initial_items(object *pl) { object *op; char start_spells[] = {0, 1, 4, 5, 7, 19}; if(pl->arch->randomitems!=NULL) create_treasure(pl->arch->randomitems,pl,GT_INVENTORY,1); for(op=pl->inv;op;op=op->below) { if(op->nrof<2 && op->type!=CONTAINER) SET_FLAG(op,FLAG_STARTEQUIP); if(op->type==SPELLBOOK) /* fix spells for first level spells */ op->stats.sp=start_spells[RANDOM()%sizeof(start_spells)]; /* Give starting characters identified, uncursed, and undamned * items. Just don't identify gold or silver, or it won't be * merged properly. */ if (op->type!=GOLDCOIN && op->type!=SILVERCOIN) { SET_FLAG(op, FLAG_IDENTIFIED); CLEAR_FLAG(op, FLAG_CURSED); CLEAR_FLAG(op, FLAG_DAMNED); } } #if 0 int i,nrof; object *op; char buf[BIG_NAME],buf2[BIG_NAME]; pl->contr->freeze_inv=1; for(i=0;i<4;i++) { nrof=0; strcpy(buf,class_items[pl->contr->face][i]); if(!strcmp(buf,"nothing")) continue; if(sscanf(buf,"%d %s",&nrof,buf2)==2) strcpy(buf,buf2); if((op=get_archetype(buf))==NULL) { LOG(llevError,"Error in class_items[%d][%d]\n",pl->contr->face,i); continue; } if(nrof) op->nrof=nrof; if(op->type==SPELLBOOK) switch(RANDOM()%6) { case 0: op->stats.sp=0; break; case 1: op->stats.sp=1; break; case 2: op->stats.sp=4; break; case 3: op->stats.sp=5; break; case 4: op->stats.sp=7; break; case 5: op->stats.sp=19; break; } if(op->nrof<2 && op->type!=CONTAINER) SET_STARTEQUIP(op); SET_IDENTIFIED(op); insert_ob_in_ob(op,pl); } for ( #endif pl->contr->freeze_inv=0; draw_all_inventory(pl); } void get_name(object *op) { op->contr->write_buf[0]='\0'; op->contr->writing=0; op->contr->state=ST_GET_NAME; draw_info(op,"What is your name?"); write_ch(op,':'); } void get_password(object *op) { op->contr->write_buf[0]='\0'; op->contr->writing=0; op->contr->state=ST_GET_PASSWORD; draw_info(op,"What is your password?"); write_ch(op,':'); op->contr->no_echo=1; } void confirm_password(object *op) { op->contr->write_buf[0]='\0'; op->contr->writing=0; op->contr->state=ST_CONFIRM_PASSWORD; draw_info(op,"Please type your password again."); write_ch(op,':'); op->contr->no_echo=1; } int roll_stat() { int a[4],i,j,k; for(i=0;i<4;i++) a[i]=(int)RANDOM()%6+1; for(i=0,j=0,k=7;i<4;i++) if(a[i]stats.Str=roll_stat(); op->stats.Dex=roll_stat(); op->stats.Int=roll_stat(); op->stats.Con=roll_stat(); op->stats.Wis=roll_stat(); op->stats.Cha=roll_stat(); sum=op->stats.Str+op->stats.Dex+op->stats.Int+ op->stats.Con+op->stats.Wis+op->stats.Cha; } while(sum<70||sum>99); #if defined( USE_SWAP_STATS) && defined(SORT_ROLLED_STATS) /* Sort the stats so that rerolling is easier... */ { int i = 0, j = 0; int statsort[6]; statsort[0] = op->stats.Str; statsort[1] = op->stats.Dex; statsort[2] = op->stats.Int; statsort[3] = op->stats.Con; statsort[4] = op->stats.Wis; statsort[5] = op->stats.Cha; /* a quick and dirty bubblesort? */ do { if (statsort[i] < statsort[i + 1]) { j = statsort[i]; statsort[i] = statsort[i + 1]; statsort[i + 1] = j; i = 0; } else { i++; } } while (i < 5); op->stats.Str = statsort[0]; op->stats.Dex = statsort[1]; op->stats.Con = statsort[2]; op->stats.Int = statsort[3]; op->stats.Wis = statsort[4]; op->stats.Cha = statsort[5]; } #endif /* SWAP_STATS */ #if 1 op->contr->orig_stats.Str=op->stats.Str; op->contr->orig_stats.Dex=op->stats.Dex; op->contr->orig_stats.Int=op->stats.Int; op->contr->orig_stats.Con=op->stats.Con; op->contr->orig_stats.Wis=op->stats.Wis; op->contr->orig_stats.Cha=op->stats.Cha; #endif op->stats.hp= -10000; op->level=0; op->stats.exp=0; op->stats.sp=0; op->stats.ac=0; add_exp(op,0); op->stats.sp=op->stats.maxsp; op->stats.hp=op->stats.maxhp; op->contr->orig_stats=op->stats; } void Roll_Again(object *op) { #ifndef USE_SWAP_STATS draw_info(op,"Roll again (y/n)? "); #else draw_info(op,"[y] to roll new stats [n] to use stats"); draw_info(op,"[1-6] [1-6] to swap stats.\n"); draw_info(op,"Roll again (y/n/1-6)? "); #endif /* USE_SWAP_STATS */ } void Swap_Stat(object *op,int Swap_Second) { #ifdef USE_SWAP_STATS signed char tmp; char *from=NULL,*to=NULL; if ( op->contr->Swap_First == 0 ) { draw_info(op,"How the hell did you get here?!?!!!"); draw_info(op,"Error in Swap_Stat code,"); draw_info(op,"mail korg@rdt.monash.edu.au"); return; } switch( op->contr->Swap_First ) { case 1: from= (char *)&op->contr->orig_stats.Str; break; case 2: from= (char *)&op->contr->orig_stats.Dex; break; case 3: from= (char *)&op->contr->orig_stats.Con; break; case 4: from= (char *)&op->contr->orig_stats.Int; break; case 5: from= (char *)&op->contr->orig_stats.Wis; break; case 6: from= (char *)&op->contr->orig_stats.Cha; break; default: break; }; switch(Swap_Second) { case 1: to= (char *)&op->contr->orig_stats.Str; draw_info(op,"Str done\n"); break; case 2: to= (char *)&op->contr->orig_stats.Dex; draw_info(op,"Dex done\n"); break; case 3: to= (char *)&op->contr->orig_stats.Con; draw_info(op,"Con done\n"); break; case 4: to= (char *)&op->contr->orig_stats.Int; draw_info(op,"Int done\n"); break; case 5: to= (char *)&op->contr->orig_stats.Wis; draw_info(op,"Wis done\n"); break; case 6: to= (char *)&op->contr->orig_stats.Cha; draw_info(op,"Cha done\n"); break; default: break; } if (from!=NULL&&to!=NULL) { tmp= (signed char) *from; *from= (signed char) *to; *to=tmp; op->stats.Str = op->contr->orig_stats.Str; op->stats.Dex = op->contr->orig_stats.Dex; op->stats.Con = op->contr->orig_stats.Con; op->stats.Int = op->contr->orig_stats.Int; op->stats.Wis = op->contr->orig_stats.Wis; op->stats.Cha = op->contr->orig_stats.Cha; } op->stats.hp= -10000; op->level=0; op->stats.exp=0; op->stats.sp=0; op->stats.ac=0; add_exp(op,0); op->stats.sp=op->stats.maxsp; op->stats.hp=op->stats.maxhp; add_exp(op,0); op->contr->Swap_First=0; #endif /* USE_SWAP_STATS */ } void flee_player(object *op) { int dir,diff; if(op->stats.hp < 0) { LOG(llevDebug, "Fleeing player is dead.\n"); CLEAR_FLAG(op, FLAG_SCARED); return; } if(op->enemy==NULL) { LOG(llevDebug,"Fleeing player had no enemy.\n"); CLEAR_FLAG(op, FLAG_SCARED); return; } if(!(RANDOM()%5)&&RANDOM()%20+1>=savethrow[op->level]) { op->enemy=NULL; CLEAR_FLAG(op, FLAG_SCARED); return; } dir=absdir(4+find_dir_2(op->x-op->enemy->x,op->y-op->enemy->y)); for(diff=0;diff<3;diff++) { int m=1-(RANDOM()&2); if(move_ob(op,absdir(dir+diff*m))|| (diff==0&&move_ob(op,absdir(dir-diff*m)))) { draw(op); return; } } /* Cornered, get rid of scared */ CLEAR_FLAG(op, FLAG_SCARED); op->enemy=NULL; } int check_pick(object *op) { if(QUERY_FLAG(op,FLAG_FLYING) || op->below==NULL || !can_pick(op,op->below)) return 1; #ifdef SEARCH_ITEMS if(op->contr->search_str[0]!='\0') { object *next,*tmp; tmp=op->below; while(tmp!=NULL&&can_pick(op,tmp)) { next=tmp->below; if(strstr(long_desc(tmp),op->contr->search_str)!=NULL) pick_up(op,tmp); tmp=next; } } #endif /* SEARCH_ITEMS */ if(op->contr->mode) { if(op->contr->mode==3) return 0; pick_up(op,op->below); while(op->below!=NULL&&can_pick(op,op->below)&&op->contr->mode>3) pick_up(op,op->below); return op->contr->mode==1||op->contr->mode==4; } return 1; } void fire(object *op,int dir) { object *tmp,*weap; if (op->contr->tmp_invis) { /* tmp invis goes away now */ op->invisible = 0; op->contr->tmp_invis = 0; update_object(op); } switch(op->contr->shoottype) { case range_none: return; case range_bow: for(weap=op->inv;weap!=NULL;weap=weap->below) if(weap->type==BOW&&QUERY_FLAG(weap, FLAG_APPLIED)) break; if(weap==NULL) { draw_info(op,"You have no bow readied."); op->contr->count_left=0; return; } if(wall(op->map,op->x+freearr_x[dir],op->y+freearr_y[dir])) { draw_info(op,"Something is in the way."); op->contr->count_left=0; return; } if((tmp=present_in_ob(weap->stats.maxsp,op))==NULL) { /* maxsp = which arrowtype to use */ sprintf(errmsg,"You have no %s left.",get_archename(weap->stats.maxsp)); draw_info(op,errmsg); op->contr->count_left=0; return; } if((tmp=get_split_ob(tmp,1))==NULL) { /* Shouldn't happen */ draw_info(op,errmsg); return; } op->speed_left=0.01-(float)FABS(op->speed)*(float)weap->stats.sp; fix_player(op); set_owner(tmp,op); tmp->direction=dir; tmp->x=op->x,tmp->y=op->y; tmp->speed=1, tmp->speed_left=0; tmp->face.number=tmp->arch->faces[dir]; tmp->stats.dam=(QUERY_FLAG(weap, FLAG_NO_STRENGTH)?0:dam_bonus[op->stats.Str]) +weap->stats.dam+weap->magic; tmp->stats.wc= 20-weap->magic-op->level-dex_bonus[op->stats.Dex] -thaco_bonus[op->stats.Str]; tmp->map=op->map; SET_FLAG(tmp, FLAG_FLYING); SET_FLAG(tmp, FLAG_FLY_ON); SET_FLAG(tmp, FLAG_WALK_ON); D_LOCK(op); #ifdef SOUND_EFFECTS play_sound_map(op->map, op->x, op->y, SOUND_FIRE_ARROW); #endif insert_ob_in_map(tmp,op->map); move_arrow(tmp); D_UNLOCK(op); return; case range_magic: /* Casting spells */ op->stats.sp-=cast_spell(op,dir,op->contr->chosen_spell,0,spellNormal); draw_stats(op); return; case range_wand: for(weap=op->inv;weap!=NULL;weap=weap->below) if(weap->type==WAND&&QUERY_FLAG(weap, FLAG_APPLIED)) break; if(weap==NULL) { draw_info(op,"You have no wand readied."); op->contr->count_left=0; return; } if(weap->stats.food<=0) { #ifdef SOUND_EFFECTS play_sound_player_only(op->contr, SOUND_WAND_POOF); #endif draw_info(op,"The wand says poof."); return; } if(cast_spell(op,dir,op->contr->chosen_spell,0,spellWand)) { SET_FLAG(op, FLAG_BEEN_APPLIED); /* You now know something about it */ if (!(--weap->stats.food)) { object *tmp; if (weap->arch) { CLEAR_FLAG(weap, FLAG_ANIMATE); weap->face = weap->arch->clone.face; weap->speed = 0; } if ((tmp=is_player_inv(weap))) draw_inventory_faces(tmp); } } return; case range_rod: case range_horn: for(weap=op->inv;weap!=NULL;weap=weap->below) if(QUERY_FLAG(weap, FLAG_APPLIED)&& weap->type==(op->contr->shoottype==range_rod?ROD:HORN)) break; if(weap==NULL) { char buf[MAX_BUF]; sprintf(buf, "You have no %s readied.", op->contr->shoottype == range_rod ? "rod" : "horn"); draw_info(op, buf); op->contr->count_left=0; return; } if(weap->stats.hpstats.sp].sp) { LOG(llevDebug,"Horn/rod: %d < %d (%d)\n", weap->stats.hp, spells[weap->stats.sp].sp, weap->stats.sp); #ifdef SOUND_EFFECTS play_sound_player_only(op->contr, SOUND_WAND_POOF); #endif if (op->contr->shoottype == range_rod) draw_info(op,"The rod whines for a while, but nothing happens."); else draw_info(op, "No matter how hard you try you can't get another note out."); return; } if(cast_spell(op,dir,op->contr->chosen_spell,0, op->contr->shoottype == range_rod ? spellRod : spellHorn)) { SET_FLAG(op, FLAG_BEEN_APPLIED); /* You now know something about it */ drain_rod_charge(weap); } return; case range_scroll: /* Control summoned monsters from scrolls */ if(op->contr->golem==NULL) { op->contr->shoottype=range_none; op->contr->chosen_spell= -1; draw_stats(op); } cast_spell(op,dir,op->contr->chosen_spell,0, spellScroll); return; #if 0 case 10: /* Thrown items */ draw_info(op,"Throw is unimplemented as of now."); return; tmp=op->inv; if(tmp==NULL) { draw_info(op,"You have nothing to throw."); op->contr->count_left=0; return; } if((tmp->weight/1000)>max_carry[op->stats.Str]/2) { sprintf(buf,"You're not strong enough to throw %s.",tmp->name); draw_info(op,buf); op->contr->count_left=0; return; } if(tmp->type!=BOMB&&(tmp->speed||IS_ALIVE(tmp))) { sprintf(buf,"You can only throw dead objects, not the %s.",tmp->name); draw_info(op,buf); op->contr->count_left=0; return; } if(tmp->type!=BOMB) tmp->speed=0.5; tmp->direction=dir; tmp->thrown=max_carry[op->stats.Str]/(tmp->weight/500); if(tmp->thrown<1) tmp->thrown=1; if(tmp->thrown>10) tmp->thrown=10; tmp->thrownthaco= 20-op->level-dex_bonus[op->stats.Dex]-thaco_bonus[op->stats.Str]; set_owner(tmp,op); move_thrown(tmp); return; #endif default: draw_info(op,"Illegal shoot type."); op->contr->count_left=0; return; } } int move_player(object *op,int dir) { object *tmp,*tmp2; object *stack; int dx, dy; int face = dir ? (dir - 1) / 2 : -1; if(op->map == NULL || op->map->in_memory != MAP_IN_MEMORY) return 0; /* peterm: added following line */ op->facing = dir; if(QUERY_FLAG(op,FLAG_CONFUSED) && dir) dir = absdir(dir + RANDOM()%3 + RANDOM()%3 - 2); dx = freearr_x[dir]; dy = freearr_y[dir]; if(op->contr->fire_on) fire(op,dir); else if((op->contr->braced||!move_ob(op,dir)) &&!out_of_map(op->map,op->x+dx,op->y+dy)) { op->contr->has_hit = 1; /* The last action was to hit, so use weapon_sp */ stack=tmp=get_map_ob(op->map,op->x+freearr_x[dir],op->y+freearr_y[dir]); while(stack) { if ((QUERY_FLAG(stack,FLAG_ALIVE) || QUERY_FLAG(stack,FLAG_CAN_ROLL) || stack->type ==LOCKED_DOOR) && stack!=op) tmp = stack; stack = stack->above; } if(tmp!=NULL) { if(tmp->head != NULL) tmp = tmp->head; if(tmp->type==DOOR&&tmp->stats.hp>=0) { tmp2=op->inv; while(tmp2!=NULL&&tmp2->type!=KEY) /* Find a key */ tmp2=tmp2->below; if(tmp2!=NULL) { #ifdef SOUND_EFFECTS play_sound_map(op->map, op->x, op->y, SOUND_OPEN_DOOR); #endif decrease_ob(tmp2); /* Use up one of the keys */ hit_player(tmp,9999,op,AT_PHYSICAL); /* Break through the door */ } } if(tmp->type==LOCKED_DOOR) { tmp2=op->inv; while(tmp2 && (tmp2->type != SPECIAL_KEY || tmp2->slaying != tmp->slaying)) /* Find the key */ tmp2=tmp2->below; if(tmp2) { decrease_ob_nr(tmp2, 1); /* Use the key */ remove_door2(tmp); /* remove door without violence ;-) */ #ifdef SOUND_EFFECTS play_sound_map(op->map, op->x, op->y, SOUND_OPEN_DOOR); #endif } else if (tmp->msg) /* show door's message if present */ print_message(op, tmp->msg, 2); } if (tmp->enemy != op && (tmp->type==PLAYER || QUERY_FLAG(tmp,FLAG_UNAGGRESSIVE) || QUERY_FLAG(tmp, FLAG_FRIENDLY)) && op->contr->peaceful && (!op->contr->braced)) { #ifdef SOUND_EFFECTS play_sound_map(op->map, op->x, op->y, SOUND_PUSH_PLAYER); #endif (void) push_ob(tmp,dir,op); } else if(QUERY_FLAG(tmp,FLAG_CAN_ROLL)&&(!op->contr->braced)) recursive_roll(tmp,dir,op); else if(tmp->stats.hp>=0&&QUERY_FLAG(tmp, FLAG_ALIVE)) { (void) attack_ob(tmp,op); if (tmp->type == PLAYER && tmp->stats.hp >= 0 && !tmp->contr->has_hit) { short luck = tmp->stats.luck; tmp->contr->has_hit = 1; (void) attack_ob(op, tmp); /* Just hit back. We are adjacent. */ tmp->stats.luck = luck; /* Don't loose luck defending yourself */ } /* op->speed_left-=op->contr->weapon_sp-1; */ if(op->contr->tmp_invis) { op->contr->tmp_invis=0; op->invisible=0; update_object(op); } } #if 0 else op->contr->run_on=0,op->direction=0; #endif } } if((check_pick(op)&&op->contr->run_on)|| (op->contr->berzerk&&op->contr->run_on)) op->direction=dir; else op->direction=0; if(face != -1) /*op->face = classarch[op->contr->face]->faces[face];*/ op->face.number = op->arch->faces[face]; update_object(op); return 0; } int has_cleared_window(Window w,Window *win_clr,int max) { for(max--;max>=0;max--) if(win_clr[max]==w) return 1; return 0; } void handle_player(object *op) { int repeat,windex=0; char text[10]; char buf[MAX_BUF]; Window win_clr[10]; if(op->contr->state == ST_PLAYING && op->contr->loading != NULL) { op->speed_left++; if(op->contr->loading->in_memory == MAP_IN_MEMORY) enter_map(op); else return; } if(op->invisible) { op->invisible--; if(!op->invisible) { CLEAR_FLAG(op, FLAG_UNDEAD); update_object(op); } } op->contr->has_hit=0; draw_stats(op); repeat=1; while(repeat) { repeat=0; if (QUERY_FLAG(op,FLAG_SCARED)) { flee_player(op); return; } if (XEventsQueued(op->contr->gdisp, QueuedAfterReading)==0) { if(op->contr->count_left>0) { int tmp_fire_on=op->contr->fire_on; op->contr->fire_on=op->contr->prev_fire_on; op->contr->count_left--; parse_key(op, op->contr->prev_cmd, op->contr->prev_keycode, op->contr->prev_keysym); op->contr->fire_on=tmp_fire_on; } else if(op->direction) if(op->contr->berzerk&&!op->contr->fire_on) move_player(op,op->direction); else if(!move_ob(op,op->direction)||!check_pick(op)) op->direction=0; #if 0 if(synchronize && op->contr->idle++>1) { op->contr->idle=1; XSync(op->contr->gdisp, False); } else XFlush(op->contr->gdisp); #endif return; } op->contr->idle=0; XNextEvent(op->contr->gdisp,&op->contr->gevent); switch(op->contr->gevent.type) { case ConfigureNotify: if(op->contr->gevent.xconfigure.window==op->contr->win_info) resize_win_info(op->contr,&op->contr->gevent); else if(op->contr->gevent.xconfigure.window==op->contr->win_inv) resize_win_inv(op->contr,&op->contr->gevent); else if(op->contr->gevent.xconfigure.window==op->contr->win_look) resize_win_look(op->contr,&op->contr->gevent); break; case Expose: repeat=1; if(has_cleared_window(op->contr->gevent.xexpose.window,win_clr,windex)) break; win_clr[windex++]=op->contr->gevent.xexpose.window; if(op->contr->gevent.xexpose.window==op->contr->win_stats) { XClearWindow(op->contr->gdisp,op->contr->win_stats); op->contr->last_value= -1; draw_stats(op); } else if(op->contr->gevent.xexpose.window==op->contr->win_info) draw_all_info(op); else if(op->contr->gevent.xexpose.window==op->contr->win_inv) draw_all_inventory(op); else if(op->contr->gevent.xexpose.window==op->contr->win_look) draw_all_look(op); else if(op->contr->gevent.xexpose.window==op->contr->win_message) draw_all_message(op); else if(op->contr->gevent.xexpose.window==op->contr->win_game) refresh(op); else if(!op->contr->split_window&& op->contr->gevent.xexpose.window==op->contr->win_root) { XClearWindow(op->contr->gdisp,op->contr->win_root); } #if 0 /* Hopefully made obsolete by win_clr. Didn't work well anyway... */ while(repeat&&XEventsQueued(op->contr->gdisp, QueuedAfterReading)) { XEvent tmp; XPeekEvent(op->contr->gdisp,&tmp); repeat=tmp.type==Expose&& tmp.xexpose.window==op->contr->gevent.xexpose.window; if(repeat) XNextEvent(op->contr->gdisp,&tmp); } #endif op->speed_left++; break; case MappingNotify: op->speed_left++; XRefreshKeyboardMapping(&op->contr->gevent.xmapping); repeat=1; break; case ClientMessage: cmev = (XClientMessageEvent *) & op->contr->gevent; if (cmev->message_type == Protocol_atom && cmev->data.l[0] == Kill_atom) { LOG(llevDebug,"Got WM_DELETE_WINDOW from %s.\n",op->name); if (op->map->in_memory == MAP_IN_MEMORY) { op->map->players--; if (!QUERY_FLAG(op,FLAG_REMOVED)) remove_ob(op); } op->contr->state = 1; op->direction = 0; op->contr->count_left = 0; sprintf(buf, "%s lost connection.", op->name); info_all(buf, 5); strcpy(op->contr->killer, "lost connection"); check_score(op); (void) save_player(op, 0); remove_lock(op->contr); info_flush(); free_player(op->contr); if(first_player==NULL) { if (server_mode != SERVER_ENABLED) exit(0); XCloseDisplay(op->contr->gdisp); LOG(llevDebug, "In server mode: continuing action.\n"); } #if 0 /* This should crash if it doesn't return! -Frank */ if (first_player==NULL) #endif /* (Also, free_player() must be before the NULL test!) */ return; } break; case ButtonPress: repeat=1; { /* Need some more local variables */ int i=0,y=op->contr->gevent.xbutton.y,x=op->contr->gevent.xbutton.x, button=op->contr->gevent.xbutton.button; int dx=(x-2)/24-5,dy=(y-2)/24-5; object *inv; inv = op->inv; if(op->contr->state||QUERY_FLAG(op,FLAG_REMOVED)) break; if(op->above) { remove_ob(op); insert_ob_in_map(op,op->map); } if(op->contr->gevent.xbutton.window==op->contr->win_game) { switch (button) { case 1: { if(dxWINRIGHT||dyWINLOWER) break; if(op->contr->blocked_los[dx+5][dy+5]) break; look_at(op,dx,dy); op->contr->last_cmd=(dx||dy)?0:2; } break; case 2: case 3: if (button == 2) op->contr->fire_on=1; if (x<115) i = 0; else if (x>149) i = 6; else i =3; if (y>152) i += 2; else if (y>115) i++; switch (i) { case 0: move_player (op,8);break; case 1: move_player (op,7);break; case 2: move_player (op,6);break; case 3: move_player (op,1);break; case 5: move_player (op,5);break; case 6: move_player (op,2);break; case 7: move_player (op,3);break; case 8: move_player (op,4);break; } op->contr->fire_on=0; break; } break; } else if(op->contr->gevent.xbutton.window == op->contr->win_message) { #ifdef USE_BUTTONS if (y>62) { for (i=0; i< NUMOPBUTTS+1; i++) { if (x>opX[i]&&xopY[i]&&ycontr->show_what != show_all) draw_all_inventory(op); } } else if (i == TALK_button) ; else if (i == PEACE_button) parse_string (op,"peaceful"); } } } else { for (i=0;idirX[i]&&xdirY[i]&&ycontr->fire_on=1; else if (button == 3) op->contr->run_on=1; switch (i) { case NW_button: move_player (op,8);break; case NO_button: move_player (op,1);break; case NE_button: move_player (op,2);break; case WE_button: move_player (op,7);break; case BR_button: break; case EA_button: move_player (op,3);break; case SW_button: move_player (op,6);break; case SO_button: move_player (op,5);break; case SE_button: move_player (op,4);break; default:break; } op->contr->fire_on=0; op->contr->run_on=0; } } #endif } else if(op->contr->gevent.xbutton.window==op->contr->win_inv) { int dy=(y-16)/24+op->contr->scroll_inv; object *tmp; if(x>270) { dy-=op->contr->scroll_inv; switch(button) { case 1: op->contr->scroll_inv-=dy>0?dy:1; draw_inventory(op); break; case 2: { int objects,scroll; object *tmp; for(tmp=inv,objects=0;tmp!=NULL;tmp=tmp->below) if(!tmp->invisible && (op->contr->show_what == show_all || (op->contr->show_what == show_applied && QUERY_FLAG(tmp, FLAG_APPLIED)) || (op->contr->show_what == show_unapplied && !QUERY_FLAG(tmp, FLAG_APPLIED)))) objects++; scroll=(y-17)*objects/op->contr->barlength_inv; if(op->contr->scroll_inv==scroll) break; op->contr->scroll_inv=scroll; draw_inventory(op); break; } case 3: op->contr->scroll_inv+=dy>0?dy:1; draw_inventory(op); break; } break; } if(dy<0) break; for(tmp=inv,i=0;tmp!=NULL;tmp=tmp->below) { while(tmp != NULL && (tmp->invisible || (op->contr->show_what == show_applied && !QUERY_FLAG(tmp, FLAG_APPLIED)) || (op->contr->show_what == show_unapplied && QUERY_FLAG(tmp, FLAG_APPLIED)))) tmp = tmp->below; if (tmp == NULL) break; if (i++ == dy) { switch(button) { case 1: examine(op,tmp); break; case 2: apply(op,tmp); if (op->contr->show_what != show_all) draw_all_inventory(op); break; case 3: drop(op,tmp); break; } break; } } break; } else if(op->contr->gevent.xbutton.window==op->contr->win_look) { int dy=(y-16)/24+op->contr->scroll_look; object *top, *tmp; if(x>270) { dy-=op->contr->scroll_look; switch(button) { case 1: op->contr->scroll_look-=dy>0?dy:1; draw_look(op); break; case 2: { int objects,scroll; /* Eneq(@csd.uu.se): ... */ for(tmp=(op->container?op->container->inv:op->below),objects=0;tmp!=NULL;tmp=tmp->below) if(!(tmp->invisible)) objects++; scroll=(y-17)*objects/op->contr->barlength_look; if(op->contr->scroll_look==scroll) break; op->contr->scroll_look=scroll; draw_look(op); break; } case 3: op->contr->scroll_look+=dy>0?dy:1; draw_look(op); break; } break; } if(dy<0) break; if(wall(op->map,op->x,op->y)) break; /* Eneq(@csd.uu.se): Altered container-treatment, displays contents in look-window. */ if (op->container) top=op->container->inv; else for(top=get_map_ob(op->map,op->x,op->y); top!=NULL&&top->above!=NULL&&top->above!=op;top=top->above); for(tmp=top,i=0;(tmp!=NULL)&&!(tmp->above&& QUERY_FLAG(tmp->above,FLAG_IS_FLOOR))&& ibelow) if(!tmp->invisible && tmp!=op && tmp->name!=NULL) i++; if(tmp==NULL||tmp==op) break; switch(button) { case 1: examine(op,tmp); break; case 2: apply(op,tmp); draw_look(op); break; case 3: pick_up(op,tmp); break; } break; } else if(op->contr->gevent.xbutton.window==op->contr->win_info) { object *tmp; switch(button) { case 1: case 2: if(op->contr->last_cmd!=1) { inventory(op,NULL); op->contr->last_cmd=1; break; } for(tmp=inv,i=0;tmp!=NULL&&i<(y-13)/13;tmp=tmp->below,i++); if(tmp!=NULL) { if(button==1) apply(op,tmp); else drop(op,tmp); inventory(op,NULL); op->contr->last_cmd=1; } break; case 3: if(op->contr->last_cmd!=2) { look_at(op,0,0); op->contr->last_cmd=2; break; } if(wall(op->map,op->x,op->y)) break; for(tmp=op->below,i=0;tmp!=NULL&& (QUERY_FLAG(op,FLAG_WIZ)||(tmp->type!=EARTHWALL&&tmp!=op))&&i<(y-13)/13; tmp=tmp->below,i++); if(tmp!=NULL) { pick_up(op,tmp); op->contr->last_cmd=0; } break; default: draw_info(op,"Undefined button."); } } } break; case KeyRelease: repeat=1; XLookupString(&op->contr->gevent.xkey,text,10,&op->contr->gkey,NULL); parse_key_release(op); break; case KeyPress: op->contr->count_left=0; if(!XLookupString(&op->contr->gevent.xkey,text,10, &op->contr->gkey,NULL)) { text[0]='\0'; } switch(op->contr->state) { case ST_PLAYING: repeat=parse_key(op,text[0],op->contr->gevent.xkey.keycode, op->contr->gkey); break; case ST_PLAY_AGAIN: repeat=0; if(text[0]=='q'||text[0]=='Q') { remove_friendly_object(op); leave(op->contr); return; } else if(text[0]=='a'||text[0]=='A') { object *tmp; remove_friendly_object(op); op->contr->ob=get_player(op->contr,op->map); tmp=op->contr->ob; add_friendly_object(tmp); #ifdef SAVE_PLAYER tmp->contr->state=ST_GET_NAME; tmp->contr->writing=0; tmp->contr->password[0]='~'; draw_info(tmp,"What is your name?"); write_ch(tmp,':'); #else tmp->contr->state=ST_ROLL_STAT; draw_info(tmp,"Welcome back!"); Roll_Again(tmp); #endif if(tmp->name!=NULL) free_string(tmp->name); add_refcount(tmp->name = op->name); op->type=DEAD_OBJECT; free_object(op); op=tmp; } break; case ST_ROLL_STAT: switch(text[0]) { #ifdef USE_SWAP_STATS case '1': if ( ! op->contr->Swap_First ) { op->contr->Swap_First=1; draw_info(op,"Str ->"); } else Swap_Stat(op,1); break; case '2': if ( ! op->contr->Swap_First ) { op->contr->Swap_First=2; draw_info(op,"Dex ->"); } else Swap_Stat(op,2); break; case '3': if ( ! op->contr->Swap_First ) { op->contr->Swap_First=3; draw_info(op,"Con ->"); } else Swap_Stat(op,3); break; case '4': if ( ! op->contr->Swap_First ) { op->contr->Swap_First=4; draw_info(op,"Int ->"); } else Swap_Stat(op,4); break; case '5': if ( ! op->contr->Swap_First ) { op->contr->Swap_First=5; draw_info(op,"Wis ->"); } else Swap_Stat(op,5); break; case '6': if ( ! op->contr->Swap_First ) { op->contr->Swap_First=6; draw_info(op,"Cha ->"); } else Swap_Stat(op,6); break; #endif /* USE_SWAP_STATS */ case 'n': case 'N': op->contr->state = ST_CHANGE_CLASS; SET_FLAG(op, FLAG_WIZ); if(op->map==NULL) { LOG(llevError,"Map == NULL in state 2\n"); break; } op->x= -1; /* So that enter_exit will put us at startx/starty */ enter_exit(op,NULL); if(op->contr->loading == NULL) { insert_ob_in_map(op,op->map); op->map->players--; /* Since add_player() already increased it */ } else { op->contr->loading->players--; op->contr->removed = 0; /* Will insert pl. when map is loaded */ } add_statbonus(op); draw_info(op,"Now choose a character."); draw_info(op,"Press any key to change outlook."); draw_info(op,"Press `d' when you're pleased."); repeat=0; break; case 'y': case 'Y': roll_stats(op); repeat=1; break; case 'q': case 'Q': draw_info(op,"Do you want to play again (a/q)?"); op->contr->state=ST_PLAY_AGAIN; #ifdef SAVE_PLAYER remove_lock(op->contr); #endif repeat=1; break; default: #ifndef USE_SWAP_STATS draw_info(op,"Yes, No or Quit. Roll again?"); #else draw_info(op,"Yes, No, Quit or 1-6. Roll again?"); #endif /* USE_SWAP_STATS */ repeat=0; } break; case ST_CHANGE_CLASS: repeat=0; if(text[0]=='q'||text[0]=='Q') { remove_ob(op); draw_info(op,"Do you want to play again (a/q)?"); op->contr->state=ST_PLAY_AGAIN; break; } if(text[0]=='d'||text[0]=='D') { object *tmp=generate_treasure(7,0); if(tmp!=NULL) insert_ob_in_ob(tmp,op); op->contr->state=ST_PLAYING; start_info(op); CLEAR_FLAG(op, FLAG_WIZ); give_initial_items(op); break; } while(!repeat) { char *name = add_string (op->name); int x = op->x, y = op->y; remove_statbonus(op); remove_ob (op); op->arch = get_player_archetype(op->arch); copy_object (&op->arch->clone, op); op->stats = op->contr->orig_stats; free_string (op->name); op->name = name; op->x = x; op->y = y; insert_ob_in_map (op, op->map); /* op->stats.Str = op->contr->orig_stats.Str; op->stats.Dex = op->contr->orig_stats.Dex; op->stats.Con = op->contr->orig_stats.Con; op->stats.Wis = op->contr->orig_stats.Wis; op->stats.Cha = op->contr->orig_stats.Cha; op->stats.Int = op->contr->orig_stats.Int; op->stats.hp = op->contr->orig_stats.hp;*/ #if 0 op->contr->face = (op->contr->face + 1) % NROFPFACES; op->face = classarch[op->contr->face]->faces[0]; strncpy(op->contr->title,classname[op->contr->face],MAX_NAME); if (op->race) free_string (op->race); op->race = add_string (classname[op->contr->face]); add_statbonus(op); op->face = op->arch->clone.face; if (op->race) free_string (op->race); op->race = add_string (op->arch->clone.race); #endif strncpy(op->contr->title,op->arch->clone.name,MAX_NAME); add_statbonus(op); repeat=allowed_class(op); } repeat=0; update_object(op); fix_player(op); op->stats.hp=op->stats.maxhp; op->stats.sp=op->stats.maxsp; op->contr->last_value= -1; draw_stats(op); break; case ST_CONFIRM_QUIT: if(text[0]!='y'&&text[0]!='Y'&&text[0]!='q'&&text[0]!='Q') { op->contr->state=ST_PLAYING; draw_info(op,"OK, continuing to play."); break; } terminate_all_pets(op); remove_ob(op); op->contr->state=ST_PLAY_AGAIN; op->direction=0; op->contr->count_left=0; sprintf(buf,"%s quits the game.",op->name); info_all(buf,5); info_flush(); strcpy(op->contr->killer,"quit"); check_score(op); #ifdef SIMPLE_PARTY_SYSTEM op->contr->party_number=(-1); #endif /* SIMPLE_PARTY_SYSTEM */ #ifdef SET_TITLE op->contr->own_title[0]='\0'; #endif /* SET_TITLE */ load_default_keys(op->contr); #ifdef SAVE_PLAYER if(!QUERY_FLAG(op,FLAG_WAS_WIZ)) { sprintf(buf,"%s/%s/%s.pl",LibDir,PlayerDir,op->name); if(unlink(buf)== -1 && debug) perror("crossfire (delete character)"); } remove_lock(op->contr); #endif draw_info(op,"Do you want to play again(a/q)?"); break; case ST_CONFIGURE: repeat=1; configure_keys(op, op->contr->gevent.xkey.keycode, op->contr->gkey); break; #ifdef SAVE_PLAYER case ST_GET_NAME: /* Waiting for player name */ receive_player_name(op,text[0]); repeat=1; break; case ST_GET_PASSWORD: /* Waiting for player password */ receive_player_password(op,text[0]); repeat=1; break; case ST_CONFIRM_PASSWORD: /* Confirm new password */ receive_player_password(op,text[0]); repeat=1; break; #endif #ifdef SHOP_LISTINGS case ST_MENU_MORE: /* more items to be listed */ shop_listing_more(op); break; #endif default: LOG(llevError,"Illegal state: %d\n",op->contr->state); } break; default: repeat=1; } } /* The following lines deletes any keypresses left in the queue: */ /* while(XEventsQueued(op->contr->gdisp, QueuedAfterReading)) XNextEvent(op->contr->gdisp,&op->contr->gevent); */ while(XEventsQueued(op->contr->gdisp, QueuedAfterReading)) { XPeekEvent(op->contr->gdisp,&op->contr->gevent); switch(op->contr->gevent.type) { case KeyPress: XNextEvent(op->contr->gdisp,&op->contr->gevent); XLookupString(&op->contr->gevent.xkey,text,10,&op->contr->gkey,NULL); /* Some keypresses we can't just throw away...: */ if((op->contr->gevent.xkey.keycode==op->contr->firekey[0] && op->contr->gkey==op->contr->firekeysym[0]) || (op->contr->gevent.xkey.keycode==op->contr->firekey[1] && op->contr->gkey==op->contr->firekeysym[1])) op->contr->fire_on=1; if((op->contr->gevent.xkey.keycode==op->contr->runkey[0] && op->contr->gkey==op->contr->runkeysym[0]) || (op->contr->gevent.xkey.keycode==op->contr->runkey[1] && op->contr->gkey==op->contr->runkeysym[1])) op->contr->run_on=1; continue; case KeyRelease: XNextEvent(op->contr->gdisp,&op->contr->gevent); XLookupString(&op->contr->gevent.xkey,text,10,&op->contr->gkey,NULL); parse_key_release(op); continue; } break; } } int save_life(object *op) { object *tmp; char buf[MAX_BUF]; if(!QUERY_FLAG(op,FLAG_LIFESAVE)) return 0; for(tmp=op->inv;tmp!=NULL;tmp=tmp->below) if(QUERY_FLAG(tmp, FLAG_APPLIED)&&QUERY_FLAG(tmp,FLAG_LIFESAVE)) { #ifdef SOUND_EFFECTS play_sound_map(op->map, op->x, op->y, SOUND_OB_EVAPORATE); #endif sprintf(buf,"Your %s vibrates violently, then evaporates.", query_name(tmp)); draw_info(op,buf); remove_ob(tmp); free_object(tmp); CLEAR_FLAG(op, FLAG_LIFESAVE); if(op->stats.hp<0) op->stats.hp = op->stats.maxhp; if(op->stats.food<0) op->stats.food = 999; return 1; } LOG(llevError,"Error: LIFESAVE set without applied object.\n"); CLEAR_FLAG(op, FLAG_LIFESAVE); return 0; } void do_some_living(object *op) { char buf[MAX_BUF]; object *tmp; int last_food=op->stats.food; int gen_hp, gen_sp; int x,y; /* these are for resurrection */ mapstruct *map; /* this is for resurrection */ if(!op->contr->state) { gen_hp=(op->contr->gen_hp+1)*op->stats.maxhp; gen_sp=(op->contr->gen_sp+1)*op->stats.maxsp; if(op->contr->golem==NULL&&--op->last_sp<0) { if(op->stats.spstats.maxsp) op->stats.sp++,op->stats.food--; op->last_sp=2000/(gen_sp<20 ? 30 : gen_sp+10); for(tmp=op->inv;tmp!=NULL;tmp=tmp->below) if((tmp->type==ARMOUR||tmp->type==HELMET||tmp->type==BOOTS|| tmp->type==SHIELD||tmp->type==GLOVES||tmp->type==GIRDLE|| tmp->type==AMULET) &&QUERY_FLAG(tmp, FLAG_APPLIED)) op->last_sp+=ARMOUR_SPELLS(tmp); } if(--op->last_heal<0) { if(op->stats.hpstats.maxhp) op->stats.hp++,op->stats.food--; op->last_heal=1200/(gen_hp<20 ? 30 : gen_hp+10); if(op->contr->digestion<0) op->stats.food+=op->contr->digestion; else if(op->contr->digestion>0&&RANDOM()%(1+op->contr->digestion)) op->stats.food=last_food; } if(--op->last_eat<0) { int bonus=op->contr->digestion>0?op->contr->digestion:0, penalty=op->contr->digestion<0?-op->contr->digestion:0; op->last_eat=25*(1+bonus)/(op->contr->gen_hp+penalty+1); op->stats.food--; } } if(!op->contr->state&&op->stats.food<0&&op->stats.hp>=0) { object *tmp; for(tmp=op->inv;tmp!=NULL;tmp=tmp->below) if(!QUERY_FLAG(tmp, FLAG_UNPAID)&& (tmp->type==FOOD||tmp->type==DRINK||tmp->type==POISON)) { draw_info(op,"You blindly grab for a bite of food."); apply(op,tmp); if (op->contr->show_what != show_all) draw_all_inventory(op); if(op->stats.food>=0||op->stats.hp<0) break; } } while(op->stats.food<0&&op->stats.hp>0) op->stats.food++,op->stats.hp--; if (!op->contr->state&&!QUERY_FLAG(op,FLAG_WIZ)&&(op->stats.hp<0||op->stats.food<0)) { if(save_life(op)) return; if(op->stats.food<0) { #ifdef EXPLORE_MODE if (op->contr->explore) { draw_info(op,"You would have starved, but you are"); draw_info(op,"in explore mode, so..."); op->stats.food=999; return; } #endif /* EXPLORE_MODE */ sprintf(buf,"%s starved to death.",op->name); strcpy(op->contr->killer,"starvation"); } else #ifdef EXPLORE_MODE if (op->contr->explore) { draw_info(op,"You would have died, but you are"); draw_info(op,"in explore mode, so..."); op->stats.hp=op->stats.maxhp; return; } #endif /* EXPLORE_MODE */ sprintf(buf,"%s died.",op->name); #ifdef SOUND_EFFECTS play_sound_player_only(op->contr, SOUND_PLAYER_DIES); #endif /* save the map location for corpse, gravestone*/ x=op->x;y=op->y;map=op->map; #ifdef NOT_PERMADEATH /****************************************************************************/ /* Patch: NOT_PERMADEATH Author: Charles Henrich */ /* Email: henrich@crh.cl.msu.edu Date : April 9, 1993 */ /* */ /* Purpose: This patch changes death from being a permanent, very painful */ /* thing, to a painful, but survivable thing. More mudlike in */ /* nature. With this patch defined, when a player dies, they will */ /* permanently lose one point off of a random stat, as well as */ /* losing 20% of their experience points. Then they are whisked */ /* to the start map. Although this sounds very nice here, it is */ /* still REAL painful to die, 20% of a million is alot! */ /* */ /****************************************************************************/ /**************************************/ /* */ /* Pick a stat, and steal on pt from */ /* it... */ /* */ /**************************************/ switch(RANDOM()%6) { case 0: { if(op->stats.Dex > 1) op->stats.Dex--; op->contr->orig_stats.Dex=op->stats.Dex; break; } case 1: { if(op->stats.Con > 1) op->stats.Con--; op->contr->orig_stats.Con=op->stats.Con; break; } case 2: { if(op->stats.Int > 1) op->stats.Int--; op->contr->orig_stats.Int=op->stats.Int; break; } case 3: { if(op->stats.Cha > 1) op->stats.Cha--; op->contr->orig_stats.Cha=op->stats.Cha; break; } case 4: { if(op->stats.Str > 1) op->stats.Str--; op->contr->orig_stats.Str=op->stats.Str; break; } case 5: { if(op->stats.Wis > 1) op->stats.Wis--; op->contr->orig_stats.Wis=op->stats.Wis; break; } } tmp=arch_to_object(find_archetype("gravestone")); /**************************************/ /* */ /* Lets make up a gravestone to put */ /* here... We put experience lost on */ /* it for kicks.... */ /* */ /**************************************/ sprintf(buf,"%s's gravestone",op->name); tmp->name=add_string(buf); sprintf(buf,"RIP\nHere rests the hero %s the %s,\n" "who lost %d experience when killed\n" "by %s.\n", op->name, op->contr->title, (int)(op->stats.exp * 0.20), op->contr->killer); tmp->msg = add_string(buf); tmp->x=op->x,tmp->y=op->y; insert_ob_in_map(tmp,op->map); /**************************************/ /* */ /* Move the player to the beginning */ /* map.... */ /* */ /**************************************/ tmp=get_object(); tmp->map = ready_map_name(first_map_path,0); EXIT_PATH(tmp) = first_map_path; EXIT_X(tmp) = -1; EXIT_Y(tmp) = -1; enter_exit(op,tmp); /* commenting this out seems to fix core dumps on some systems. */ /* free_object(tmp);*/ /**************************************/ /* */ /* Subtract the experience points, */ /* if we died cause of food, give us */ /* food, and reset HP's... */ /* */ /**************************************/ /* remove any poisoning the character may be suffering. */ tmp = present_arch_in_ob(find_archetype("poisoning"), op); if (tmp!=NULL) tmp->stats.food =1; add_exp(op, (op->stats.exp * -0.20)); if(op->stats.food < 0) op->stats.food = 500; op->stats.hp = op->stats.maxhp; /**************************************/ /* */ /* Repaint the characters inv, and */ /* stats, and show a nasty message ;) */ /* */ /**************************************/ draw_stats(op); draw_all_inventory(op); draw_info(op,"YOU HAVE DIED."); return; #endif #ifdef SIMPLE_PARTY_SYSTEM op->contr->party_number=(-1); #endif /* SIMPLE_PARTY_SYSTEM */ #ifdef SET_TITLE op->contr->own_title[0]='\0'; #endif /* SET_TITLE */ op->contr->count_left=0; load_default_keys(op->contr); info_all(buf,1); info_flush(); check_score(op); if(op->contr->golem!=NULL) { remove_friendly_object(op->contr->golem); remove_ob(op->contr->golem); free_object(op->contr->golem); op->contr->golem=NULL; } op->contr->freeze_inv=1; op->contr->freeze_look=1; loot_object(op); /* Remove some of the items for good */ op->contr->freeze_inv=0; op->contr->freeze_look=0; remove_ob(op); op->direction=0; #ifdef SAVE_PLAYER if(!QUERY_FLAG(op,FLAG_WAS_WIZ)&&op->stats.exp) { delete_character(op->name); #ifndef NOT_PERMADEATH /* save playerfile sans equipment when player dies ** then save it as player.pl.dead so that future resurrection ** type spells will work on them nicely */ op->stats.hp = op->stats.maxhp; op->stats.food = 999; /* set the location of where the person will reappear when */ if(op->map!=NULL) strcpy(op->map->path, EMERGENCY_MAPPATH); op->x = EMERGENCY_X; op->y = EMERGENCY_Y; save_player(op,0); /* please see resurrection.c: peterm */ dead_player(op); #endif } remove_lock(op->contr); #endif op->contr->state=ST_PLAY_AGAIN; draw_info(op,"Do you want to play again (a/q)?"); #ifdef NOT_PERMADEATH tmp=arch_to_object(find_archetype("gravestone")); sprintf(buf,"%s's gravestone",op->name); tmp->name=add_string(buf); sprintf(buf,"RIP\nHere rests the hero %s the %s,\nwho was killed by %s.\n", op->name, op->contr->title, op->contr->killer); tmp->msg = add_string(buf); tmp->x=x,tmp->y=y; insert_ob_in_map(tmp,map); #endif #ifndef NOT_PERMADEATH /* peterm: added to create a corpse at deathsite. */ tmp=arch_to_object(find_archetype("corpse")); sprintf(buf,"%s",op->name); tmp->name=add_string(buf); tmp->immune=262143; /* immune to everything, indestructible player */ /* corpse.*/ tmp->level=op->level; tmp->x=x;tmp->y=y; insert_ob_in_map(tmp,map); #endif } } void loot_object(object *op) { /* Grab and destroy some treasure */ object *tmp,*tmp2,*next; if (op->container) { /* close open sack first */ tmp = op->container; if (tmp->below!=NULL) tmp->below->above=NULL; op->container->inv=tmp->below; tmp->below=op->container=NULL; free_object(tmp); } for(tmp=op->inv;tmp!=NULL;tmp=next) { next=tmp->below; remove_ob(tmp); tmp->x=op->x,tmp->y=op->y; if (QUERY_FLAG(tmp, FLAG_CONTAINER)) { /* empty container to ground */ loot_object(tmp); } if(QUERY_FLAG(tmp, FLAG_STARTEQUIP)||QUERY_FLAG(tmp,FLAG_NO_DROP) ||!(RANDOM()%3)) { if(tmp->nrof>1) { tmp2=get_split_ob(tmp,1+RANDOM()%(tmp->nrof-1)); free_object(tmp2); insert_ob_in_map(tmp,op->map); } else free_object(tmp); } else insert_ob_in_map(tmp,op->map); } } /* * fix_weight(): Check recursively the weight of all players, and fix * what needs to be fixed. Refresh windows and fix speed if anything * was changed. * sum_weight() is a recursive function which calculates this. */ signed long sum_weight(object *op) { signed long sum; object *inv; for(sum = 0, inv = op->inv; inv != NULL; inv = inv->below) sum += sum_weight(inv) + inv->nrof ? inv->weight * inv->nrof : inv->weight; if (op->bonus) sum = (sum * (100 - op->bonus))/100; if(op->carrying != sum) op->carrying = sum; return sum; } void fix_weight() { player *pl; for (pl = first_player; pl != NULL; pl = pl->next) { int old = pl->ob->carrying, sum = sum_weight(pl->ob); if(old == sum) continue; fix_player(pl->ob); draw_all_inventory(pl->ob); LOG(llevDebug,"Fixed inventory in %s (%d -> %d)\n", pl->ob->name, old, sum); } } void fix_luck() { player *pl; for (pl = first_player; pl != NULL; pl = pl->next) if (!pl->ob->contr->state) change_luck(pl->ob, 0); } From crossfire-request Tue Mar 8 22:38:25 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 22:38:25 +0100 Received: by ida.csd.uu.se with SMTP id AA18033 (5.65c8/IDA-1.4.4 for ); Tue, 8 Mar 1994 22:37:07 +0100 Message-Id: <199403082137.AA18033@ida.csd.uu.se> To: Peter Mardahl Cc: crossfire@ifi.uio.no Subject: Re: bug in player.c In-Reply-To: Your message of "Tue, 08 Mar 1994 13:28:41 PST." <199403082128.NAA22782@soda.berkeley.edu> Date: Tue, 08 Mar 1994 22:37:06 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO The part that sets 'map' to the right value didn't make it either. /Eneq From crossfire-request Tue Mar 8 22:28:57 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 22:28:48 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA22782 for crossfire@ifi.uio.no; Tue, 8 Mar 1994 13:28:41 -0800 Date: Tue, 8 Mar 1994 13:28:41 -0800 From: Peter Mardahl Message-Id: <199403082128.NAA22782@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: bug in player.c Status: RO the resurrection code is buggy. The line which causes the crash is : tmp->x=x;tmp->y=y; However, this line is NOT incorrect. What IS incorrect is that a modfication which set x and y to the correct values didn't make it into the new version. The problem was this: x and y were uninitialized when they were used. x and y were intended to hold the location of the character BEFORE he got killed, as was "map". If these aren't saved, the gravestone always appears in "emergency_x", "emergency_y". the assignment which set x and y and map properly is nonexistent in 90.2 NOT good. There are other mistakes which will cause bizarre behavior. I'll fix this and mail a replacement RSN. PeterM From crossfire-request Tue Mar 8 21:54:58 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 21:54:57 +0100 Received: by ida.csd.uu.se with SMTP id AA17826 (5.65c8/IDA-1.4.4 for ); Tue, 8 Mar 1994 21:54:38 +0100 Message-Id: <199403082054.AA17826@ida.csd.uu.se> To: Peter Mardahl Cc: crossfire@ifi.uio.no Subject: Re: 0.92 Bug? In-Reply-To: Your message of "Tue, 08 Mar 1994 12:51:14 PST." <199403082051.MAA18255@soda.berkeley.edu> Date: Tue, 08 Mar 1994 21:54:37 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO >If there's any problem with dying, >please switch to the NOT_PERMADEATH >mode. > >Apparently the soda resurrection code is buggy. >I'll look into it..... So I've noticed, but the immediate disturbance (SIGBUS when dying) doesn't occur after I fixed that minor detail with the missing 'op->'. /Eneq From crossfire-request Tue Mar 8 21:51:38 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 21:51:36 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id MAA18255; Tue, 8 Mar 1994 12:51:14 -0800 Date: Tue, 8 Mar 1994 12:51:14 -0800 From: Peter Mardahl Message-Id: <199403082051.MAA18255@soda.berkeley.edu> To: crossfire@ifi.uio.no, eneq@meryl.csd.uu.se Subject: Re: 0.92 Bug? Status: RO If there's any problem with dying, please switch to the NOT_PERMADEATH mode. Apparently the soda resurrection code is buggy. I'll look into it..... From crossfire-request Tue Mar 8 21:43:52 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 21:43:51 +0100 Received: from localhost (haatanen@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id WAA17521; Tue, 8 Mar 1994 22:43:49 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403082043.WAA17521@cc.lut.fi> Subject: Notes about 0.90.2 To: crossfire@ifi.uio.no Date: Tue, 8 Mar 1994 22:43:49 +0200 (EET) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 1242 Status: RO I got crossfire-0.90.2 compiled and installed here. Here is some comments for next version. Make install seems install many unneeded files to libdir. Here is some of them. lib/bmaps.paths These are only needed with arch-directory lib/collect.pl Maybe better just include in arch.tar and lib/xpmtopix.sh not in main distribution? lib/util.pl lib/rplay.conf Looks like Frank's rplay configure file ;) lib/xbmtobdf.c Needed to build font. lib/crossfire.bdf lib/adm/flushmaps What mapindex ? :) Also there seems have many scripts in bin, which could be checked and installed in adm if needed. One map (maps/mcz/Navar_city/illusion/illexit1993) seems have a newline as the last char. This can be deleted since it's just a copy of illexit map. All PLAYER_COLOR defines can(must?) deleted in login.c, since color is saved in object not in player struct. New input system seems interesting. But mapinfo command and most help files seems to be missing. Maybe it would be better if all help texts would be in one file? crossfire -h shows -m option even if it's undefined from config.h. And there seems be the same problem that eneq@meryl.csd.uu.se pointed out. Maybe you could send patch so we don't need fix the same code? -Tero From crossfire-request Tue Mar 8 21:34:55 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 21:34:54 +0100 Received: by ida.csd.uu.se with SMTP id AA17693 (5.65c8/IDA-1.4.4 for ); Tue, 8 Mar 1994 21:34:41 +0100 Message-Id: <199403082034.AA17693@ida.csd.uu.se> To: roy@eckerd.edu (Jonathan Roy) Cc: crossfire@ifi.uio.no In-Reply-To: Your message of "Tue, 08 Mar 1994 15:12:28 +0500." <9403082012.AA12985@acasun.eckerd.edu> Date: Tue, 08 Mar 1994 21:34:40 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO >Problem in the Imakefile in ./server. We kept getting an error message >about loop detected. In the other Makefiles BINDIR was /usr/bin/X11, >but in server it was BINDIR = ${C_BINDIR} which was the loop... >(Maybe it's (C_BINDIR), you get the idea. :) > >(We could have caused this, but maybe someone more knowledgable in Imakefiles >can check it... > The problem comes from a statement that is generated if you define HAVE_XPM and looks something like this. XPM_DEFINES = ... /* Initial decl. */ . . . XPM_DEFINES = $(XPM_DEFINES) ... /* Post-initial decl. */ The problem is caused by the second statement which is detected as an infinite loop, no so strange :-). A temporary way to fix it is to put them on the same line. The author can fix it in a later release. Previous it looked something like this; XPM_DEFINES = ... . . . XPM_DEFINES += ... which is legal for gnumake (I think) but other doesn't recognize it. /Eneq From crossfire-request Tue Mar 8 21:28:27 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 21:28:24 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id MAA23550; Tue, 8 Mar 1994 12:28:04 -0800 From: Tyler Van Gorder Message-Id: <199403082028.MAA23550@corpse.ecst.csuchico.edu> Subject: Re: Crossfire 0.90.2 compiling To: mackrill@atuk.aspentec.com (Sam Mackrill : AspenTech UK) Date: Tue, 8 Mar 1994 12:28:03 -0800 (PST) Cc: crossfire@ifi.uio.no, mackrill@atuk.aspentec.com In-Reply-To: <0097B1FE.4370649F.4552@atuk.aspentec.com> from "Sam Mackrill : AspenTech UK" at Mar 8, 94 11:25:09 am X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 569 Status: RO > > If the player colour flag (PLAYER_COLOR in config.h) is set then Crossfire > won't compile because the command_color function is missing from sproto.h > > add the following line > > extern int command_color ( object *op, char *params ); > > Sam > > Can we have a language flag compiler option? > It is very hard for me to type "color"... it should of course be "colour" > Sam, If you do a "make proto" in the server directory the makefile will use cextract to generate a new sproto.h for you. same is true in the common dir, accept that it generates proto.h From crossfire-request Tue Mar 8 20:41:15 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 20:41:14 +0100 Received: by ida.csd.uu.se with SMTP id AA17388 (5.65c8/IDA-1.4.4 for ); Tue, 8 Mar 1994 20:41:12 +0100 Message-Id: <199403081941.AA17388@ida.csd.uu.se> To: crossfire@ifi.uio.no Subject: 0.92 Bug? Date: Tue, 08 Mar 1994 20:41:11 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO Ignore the previous letter, I found the cause; For those responsible for the corpse tie-in when a player dies should take a look at it again I believe you have forgotten a few 'op->'. /Eneq From crossfire-request Tue Mar 8 20:25:23 1994 Return-Path: Received: from ida.csd.uu.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 20:25:23 +0100 Received: by ida.csd.uu.se with SMTP id AA17272 (5.65c8/IDA-1.4.4 for ); Tue, 8 Mar 1994 20:25:15 +0100 Message-Id: <199403081925.AA17272@ida.csd.uu.se> To: crossfire@ifi.uio.no Subject: 0.92 Bug? Date: Tue, 08 Mar 1994 20:25:14 +0100 From: Rickard Eneqvist X-Charset: ASCII X-Char-Esc: 29 Status: RO I get the following when the character dies; /usr/share/hacks/games/lib/crossfire/players/Eneq.pl: No such file or directory /usr/share/hacks/games/lib/crossfire/players/Eneq.pl.dead: No such file or directory Trying to insert object outside the map. arch gravestone name Eneq's gravestone msg RIP Here rests the hero Eneq the barbarian, who was killed by skeleton. endmsg face gravestone.111 x 15 y 19 nrof 1 type 98 material 64 value 1 weight 200000 end Program received signal 10, Bus error 0x4e988 in insert_ob_in_map () (gdb) bt #0 0x4e988 in insert_ob_in_map () #1 0x26944 in do_some_living () #2 0x1b484 in process_events () #3 0x1bc64 in main () (gdb) Anyone got the same trouble, I expect you don't since I haven't seen anything about it on the list. /Eneq From crossfire-request Tue Mar 8 19:58:13 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 19:58:11 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id KAA04989; Tue, 8 Mar 1994 10:57:33 -0800 Date: Tue, 8 Mar 1994 10:57:33 -0800 From: Peter Mardahl Message-Id: <199403081857.KAA04989@soda.berkeley.edu> To: Petri.Heinila@lut.fi, crossfire@ifi.uio.no Subject: Re: Weight Status: RO Power crystals are very valuable gems which have another purpose. (ridiculously valuable, actually) Just set the maxsp in a power crystal to zero or something, and wham, light money. PeterM From crossfire-request Tue Mar 8 19:56:21 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 19:56:13 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id KAA04864 for crossfire@ifi.uio.no; Tue, 8 Mar 1994 10:56:08 -0800 Date: Tue, 8 Mar 1994 10:56:08 -0800 From: Peter Mardahl Message-Id: <199403081856.KAA04864@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: platina coins Status: RO at soda we experimented with platina coins. It is possible to arrange your money so that you have an infinite amount of cash if you arrange to buy stuff with a mix of platina and gold. i.e., the code to handle platina coins is buggy! PeterM From crossfire-request Tue Mar 8 18:57:14 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 18:57:13 +0100 Received: from localhost (haatanen@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id TAA13344; Tue, 8 Mar 1994 19:57:12 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403081757.TAA13344@cc.lut.fi> Subject: Re: Question on Xfire 90.2 To: crossfire@ifi.uio.no Date: Tue, 8 Mar 1994 19:57:12 +0200 (EET) In-Reply-To: <15994.763148316@mailhost.aber.ac.uk> from "Benjamin Thomas Ketteridge" at Mar 8, 94 05:38:36 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 313 Status: RO > Folks, > a question re: map making. > What does the stacking variable do in maps? If you mean stacking variable in attributes window in editor it's just editor's display mode, so it's easy check stacked objects. [like remove sea under dragon transport in the starting city :)] The game doesn't use it. -Tero From crossfire-request Tue Mar 8 18:38:03 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 18:38:02 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Tue, 8 Mar 1994 17:37:02 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA28412; Tue, 8 Mar 94 17:33:25 GMT To: crossfire@ifi.uio.no, master@rahul.net Subject: Question on Xfire 90.2 Date: Tue, 08 Mar 1994 17:38:36 +0000 Message-Id: <15994.763148316@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Folks, a question re: map making. What does the stacking variable do in maps? Thanks, Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ ps. fantastic game (but a bit troublesome to compile if your system hasn't got an up-to-date version of xpm) :-) From crossfire-request Tue Mar 8 18:06:40 1994 Return-Path: <<@serv-200.dfki.uni-kl.de:elsbernd@dfki.uni-kl.de>> Received: from uni-kl.de by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 18:06:37 +0100 Received: from serv-200.dfki.uni-kl.de by stepsun.uni-kl.de id aa19750; 8 Mar 94 18:06 MET Received: from serv-301.dfki.uni-kl.de by serv-200.dfki.uni-kl.de id aa28765; 8 Mar 94 17:06 GMT Received: from serv-301.dfki.uni-kl.de by serv-301.dfki.uni-kl.de id aa19137; 8 Mar 94 17:06 GMT To: Klaus Elsbernd cc: crossfire@ifi.uio.no Subject: Re: Solaris 2.3 In-reply-to: Your message of "Tue, 08 Mar 1994 16:49:28 +0100." <9403081549.aa17933@serv-301.dfki.uni-kl.de> Date: Tue, 08 Mar 1994 18:06:27 +0100 From: Klaus Elsbernd Message-ID: <9403081706.aa19137@serv-301.dfki.uni-kl.de> Status: RO uoaps; I made one mistake which prevents my patches for Solaris to run on SunOS 4.1.x: Here is the correkt one for include sunos.h (An now, I read the README for making patches.) 2 root@isg-200: diff -c include/sunos.h.dist include/sunos.h *** include/sunos.h.dist Mon Mar 7 07:58:12 1994 --- include/sunos.h Tue Mar 8 17:29:26 1994 *************** *** 38,119 **** #else #include #endif ! int strcasecmp(char *, char *); char *getenv(); char *index(); int _flsbuf(); int cfree(); - /* extern int free(); */ int close(); int fclose(); - int pclose(); - void rewind(); int fgetc(); int fputs(); int fscanf(); int ftime(); ! int fread(); ! int getpid(); int printf(); int puts(); int read(); ! int rename(char *s1, char *s2); int scanf(); int sscanf(); ! int ungetc(); ! int unlink(); ! int write(); ! long atol(); ! long RANDOM(); long strtol(); time_t time(); ! void bcopy(); ! /* void exit(); */ ! void perror(); ! void srandom(); ! uid_t getuid(); ! uid_t geteuid(); ! int seteuid(); ! gid_t getgid(); ! gid_t getegid(); ! int setegid(); ! char *_crypt(); ! int rmdir(); ! int getdtablesize(); ! void bzero(); ! int select(); ! int dup(); int vprintf(); int vsprintf(); ! int socket(); ! int setsockopt(); ! int bind(); ! int listen(); ! int accept(); ! char *strdup_local(char *txt); ! int socket(); ! int setsockopt(); ! int bind(); ! int connect(); ! int listen(); ! int accept(); ! int gettimeofday(); ! int strncasecmp(); ! int gethostname(); ! int fork(); ! int dup2(); ! int ioctl(); ! int setpgrp(); ! #ifndef SOLARIS2_1 ! int printf(); ! int fprintf(); ! int fscanf(); ! int scanf(); ! int sscanf(); ! int system(char *); ! char *memset(); void fseek (FILE *,long,int); int strftime(); ! void fflush(); #endif --- 38,108 ---- #else #include #endif ! ! char *_crypt(); char *getenv(); char *index(); + char *memset(); + char *strdup_local(char *txt); + long RANDOM(); int _flsbuf(); + int accept(); + long atol(); + void bcopy(); + int bind(); + void bzero(); int cfree(); int close(); + int connect(); + int dup(); + int dup2(); int fclose(); int fgetc(); + int fprintf(); int fputs(); int fscanf(); int ftime(); ! int getdtablesize(); ! gid_t getegid(); ! uid_t geteuid(); ! gid_t getgid(); ! int gethostname(); ! int gettimeofday(); ! uid_t getuid(); ! int ioctl(); ! int listen(); ! int pclose(); ! void perror(); int printf(); int puts(); int read(); ! void rewind(); ! int rmdir(); int scanf(); + int select(); + int setegid(); + int seteuid(); + int setsockopt(); + int socket(); + void srandom(); int sscanf(); ! int strcasecmp(char *, char *); ! int strncasecmp(); long strtol(); time_t time(); ! int ungetc(); ! int unlink(); int vprintf(); int vsprintf(); ! int write(); ! #ifndef SVR4 ! void fflush(); ! int fork(); ! int fread(); void fseek (FILE *,long,int); + int getpid(); + int rename(char *s1, char *s2); int strftime(); ! int system(char *); #endif -------------end------------------------------------------------------- Another suggestion: change the file motd to remark the newer version. MfG Klaus From crossfire-request Tue Mar 8 16:50:34 1994 Return-Path: <<@serv-200.dfki.uni-kl.de:elsbernd@dfki.uni-kl.de>> Received: from uni-kl.de by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 16:50:03 +0100 Received: from serv-200.dfki.uni-kl.de by stepsun.uni-kl.de id aa17991; 8 Mar 94 16:49 MET Received: from serv-301.dfki.uni-kl.de by serv-200.dfki.uni-kl.de id aa28185; 8 Mar 94 15:49 GMT Received: from serv-301.dfki.uni-kl.de by serv-301.dfki.uni-kl.de id aa17933; 8 Mar 94 15:49 GMT To: BLAISE Eric cc: crossfire@ifi.uio.no, elsbernd@dfki.uni-kl.de Subject: Re: Solaris 2.3 In-reply-to: Your message of "Tue, 08 Mar 1994 15:54:06 +0100." <199403081454.AA21589@enstb.enst-bretagne.fr> Date: Tue, 08 Mar 1994 16:49:28 +0100 From: Klaus Elsbernd Message-ID: <9403081549.aa17933@serv-301.dfki.uni-kl.de> Status: RO Hi; I managed to compile crossfire-0.90.2 on solaris 2.3! But with the following modifications, which I hope may be included in the next release; I made the same changes in crossfire-0.90.1{,a}. I suggest to remove the #ifdef SOLARIS2_1 instructions. If they are needed for a special SOLARIS version, change them to #if (__sun__) && OSMajorVersion >= 5 && OSMinorVersion == 1 ... The last patch will be needed for all systems to enable the search command (Which I think is very usefull) For all files I include an individual patch out of a context diff. Please feed all the lines between corresponding ----------------- snip snip ---------------------------- lines one after another to patch Or remove those lines and the comments and give them all advance. So here they are: for make install.man in doc and lib target xbmtobdf change: ----------------- snip snip ---------------------------- 0 root@isg-200: diff -c doc/Imakefile.dist doc/Imakefile *** doc/Imakefile.dist Mon Mar 7 07:57:31 1994 --- doc/Imakefile Tue Mar 8 15:15:54 1994 *************** *** 32,38 **** crossfire.doc crossfire.man crosslib.doc \ editable.README mapguide mapmakers_guide_to_runes \ spell_params.doc spellcasters_guide_to_runes spoiler.ps \ ! xbmtobdf.man xledit.man spoiler.ps: force_depend --- 32,38 ---- crossfire.doc crossfire.man crosslib.doc \ editable.README mapguide mapmakers_guide_to_runes \ spell_params.doc spellcasters_guide_to_runes spoiler.ps \ ! xledit.man spoiler.ps: force_depend *************** *** 50,56 **** /* InstallManPage(xledit) */ InstallManPage(crossfire, $(MANDIR)) - InstallManPage(xbmtobdf, $(MANDIR)) InstallManPage(xledit, $(MANDIR)) depend:: --- 50,55 ---- ----------------- snip snip ---------------------------- for daemon.c to include the right header files ----------------- snip snip ---------------------------- 1 root@isg-200: diff -c server/daemon.c.dist server/daemon.c *** server/daemon.c.dist Mon Mar 7 07:57:41 1994 --- server/daemon.c Tue Mar 8 14:48:49 1994 *************** *** 88,94 **** (void) ioctl (i, TIOCTTY, &zero); #else #ifndef TIOCNOTTY /********* !!!!!!!!! **********/ ! #ifdef SOLARIS2_1 #include #else #include --- 88,94 ---- (void) ioctl (i, TIOCTTY, &zero); #else #ifndef TIOCNOTTY /********* !!!!!!!!! **********/ ! #if defined (__sun__) && defined(SVR4) #include #else #include *************** *** 101,107 **** #ifdef SYSV ! #if defined(hpux) || defined(sgi) /* Added sgi. -Frank */ setsid(); #else setpgrp (0, 0); --- 101,107 ---- #ifdef SYSV ! #if defined(__sun__) || defined(hpux) || defined(sgi) /* Added sgi. -Frank */ setsid(); #else setpgrp (0, 0); ----------------- snip snip ---------------------------- for socket.c ----------------- snip snip ---------------------------- 1 root@isg-200: diff -c server/socket.c.dist server/socket.c *** server/socket.c.dist Mon Mar 7 07:57:43 1994 --- server/socket.c Tue Mar 8 15:45:02 1994 *************** *** 66,72 **** if(server_mode == SERVER_ENABLED || debug) LOG(llevError,"Opening add user socket on %d\n",PORT); ! #if defined(hpux) || defined (SOLARIS2_1) max_filedescriptors = sysconf(_SC_OPEN_MAX); #else max_filedescriptors = getdtablesize(); --- 66,72 ---- if(server_mode == SERVER_ENABLED || debug) LOG(llevError,"Opening add user socket on %d\n",PORT); ! #if defined(hpux) || (defined(__sun__) && defined (SVR4)) max_filedescriptors = sysconf(_SC_OPEN_MAX); #else max_filedescriptors = getdtablesize(); *************** *** 105,111 **** perror("error on setsockopt LINGER (NULL version)"); #endif ! #if defined(__osf__) || defined(hpux) || defined(sgi) || defined(NeXT) { const char tmp =1; --- 105,111 ---- perror("error on setsockopt LINGER (NULL version)"); #endif ! #if defined(__osf__) || defined(hpux) || defined(sgi) || defined(NeXT) || defined(__sun__) { const char tmp =1; ----------------- snip snip ---------------------------- for client.c memcpy is available under sunsos[45] ----------------- snip snip ---------------------------- 1 root@isg-200: diff -c client/client.c{.dist,} *** client/client.c.dist Mon Mar 7 07:57:46 1994 --- client/client.c Tue Mar 8 15:00:40 1994 *************** *** 234,244 **** fprintf(stderr,"Unknown host: %s\n",hostname); return 1; } - #ifdef SOLARIS2_1 memcpy(&insock.sin_addr, hostbn->h_addr, hostbn->h_length); - #else - bcopy(hostbn->h_addr, &insock.sin_addr, hostbn->h_length); - #endif sprintf(buf,"xhost +%s",hostbn->h_name); } if (optcmd == (char *) NULL) --- 234,240 ---- ----------------- snip snip ---------------------------- I resorted sunos.h and removed duplicate entries and some invalid one: ----------------- snip snip ---------------------------- 1 root@isg-200: diff -c include/sunos.h{.dist,} *** include/sunos.h.dist Mon Mar 7 07:58:12 1994 --- include/sunos.h Tue Mar 8 14:46:17 1994 *************** *** 38,119 **** #else #include #endif ! int strcasecmp(char *, char *); char *getenv(); char *index(); int _flsbuf(); int cfree(); - /* extern int free(); */ int close(); int fclose(); - int pclose(); - void rewind(); int fgetc(); int fputs(); int fscanf(); int ftime(); ! int fread(); ! int getpid(); int printf(); int puts(); int read(); ! int rename(char *s1, char *s2); int scanf(); int sscanf(); ! int ungetc(); ! int unlink(); ! int write(); ! long atol(); ! long RANDOM(); long strtol(); time_t time(); ! void bcopy(); ! /* void exit(); */ ! void perror(); ! void srandom(); ! uid_t getuid(); ! uid_t geteuid(); ! int seteuid(); ! gid_t getgid(); ! gid_t getegid(); ! int setegid(); ! char *_crypt(); ! int rmdir(); ! int getdtablesize(); ! void bzero(); ! int select(); ! int dup(); int vprintf(); int vsprintf(); ! int socket(); ! int setsockopt(); ! int bind(); ! int listen(); ! int accept(); ! char *strdup_local(char *txt); ! int socket(); ! int setsockopt(); ! int bind(); ! int connect(); ! int listen(); ! int accept(); ! int gettimeofday(); ! int strncasecmp(); ! int gethostname(); ! int fork(); ! int dup2(); ! int ioctl(); ! int setpgrp(); ! #ifndef SOLARIS2_1 ! int printf(); ! int fprintf(); ! int fscanf(); ! int scanf(); ! int sscanf(); ! int system(char *); ! char *memset(); void fseek (FILE *,long,int); int strftime(); ! void fflush(); #endif --- 38,109 ---- #else #include #endif ! ! char *_crypt(); char *getenv(); char *index(); + char *memset(); + char *strdup_local(char *txt); + long RANDOM(); int _flsbuf(); + int accept(); + long atol(); + void bcopy(); + int bind(); + void bzero(); int cfree(); int close(); + int connect(); + int dup(); + int dup2(); int fclose(); int fgetc(); + int fprintf(); int fputs(); int fscanf(); int ftime(); ! int getdtablesize(); ! gid_t getegid(); ! uid_t geteuid(); ! gid_t getgid(); ! int gethostname(); ! int gettimeofday(); ! uid_t getuid(); ! int ioctl(); ! int listen(); ! int pclose(); ! void perror(); int printf(); int puts(); int read(); ! void rewind(); ! int rmdir(); int scanf(); + int select(); + int setegid(); + int seteuid(); + int setsockopt(); + int socket(); + void srandom(); int sscanf(); ! int strcasecmp(char *, char *); ! int strncasecmp(); long strtol(); time_t time(); ! int ungetc(); ! int unlink(); int vprintf(); int vsprintf(); ! int write(); ! #ifndef SVR4 ! void fflush(); ! int fork(); ! int fread(); void fseek (FILE *,long,int); + int getpid(); + int rename(char *s1, char *s2); + int setpgrp(void); int strftime(); ! int system(char *); #endif ----------------- snip snip ---------------------------- for the search command to be available: 0 root@isg-200: diff -c include/sproto.h{.dist,} *** include/sproto.h.dist Mon Mar 7 07:58:12 1994 --- include/sproto.h Tue Mar 8 14:33:26 1994 *************** *** 185,190 **** --- 185,191 ---- extern int command_rotateinventory ( object *op, char *params ); extern int command_invisible ( object *op, char *params ); extern int command_rotateshoottype ( object *op, char *params ); + extern int command_search ( object *op, char *params ); extern int command_show ( object *op, char *params ); extern int command_throw ( object *op, char *params ); extern int command_brace ( object *op, char *params ); ----------------- snip snip ---------------------------- I hope this helps MfG Klaus From crossfire-request Wed Mar 9 02:32:17 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 02:32:16 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA24094; Tue, 8 Mar 1994 20:29:07 +0500 Date: Tue, 8 Mar 1994 20:29:07 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403090129.AA24094@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Font adivce... Content-Length: 320 Status: RO Font advice for future users. We installed as root. Root's font path did not include /usr/lib/X11/fonts. (Or even /usr/lib/X11). So, I source'd my personal .cshrc file, typed: mkfontdir /usr/lib/X11/fonts/misc And POOF, the fonts.dir file was changed. Wow. Now fonts finally work, after all these long months. :) From crossfire-request Wed Mar 9 02:01:53 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 02:01:51 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA22917; Tue, 8 Mar 1994 19:58:43 +0500 Date: Tue, 8 Mar 1994 19:58:43 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403090058.AA22917@acasun.eckerd.edu> To: crossfire@ifi.uio.no, master@rahul.net, roy@eckerd.edu Subject: Re: Color pixmap crash. Content-Length: 413 Status: RO > Or you could just use normal pixmaps (-pix instead of -xpm). We've been using -pix every time. -xpm doesn't even show up on the -h list of commands! We've used -pix every time, sometimes with -b on the server, sometimes without -b. Never used -xpm (WHich is what I was confused, the code says draw_pixs is used for -pix command ling arg.) Should we try -xpm, since it's appartently always using that code? From crossfire-request Wed Mar 9 02:29:27 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 02:29:25 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA22520; Tue, 8 Mar 1994 19:42:00 +0500 Date: Tue, 8 Mar 1994 19:42:00 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403090042.AA22520@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 116 Status: RO OK, ok, -b doesn't do it. Even running in black and white, I get the draw_color_pix segmentation fault... Help? From crossfire-request Wed Mar 9 01:22:00 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:21:58 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA22107; Tue, 8 Mar 1994 19:18:49 +0500 Date: Tue, 8 Mar 1994 19:18:49 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403090018.AA22107@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 98 Status: RO (Simple hack for avoiding the draw_color_pixmap bug... Use -b and play in black and white. :) ) From crossfire-request Wed Mar 9 01:09:21 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:09:19 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA21903; Tue, 8 Mar 1994 19:06:10 +0500 Date: Tue, 8 Mar 1994 19:06:10 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403090006.AA21903@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Bombs... Content-Length: 1116 Status: RO Three tims now, it crashs as soon as someone else tried to join in. I captured it all in gdb.. Wow. :) socket[merchant]: quit Command: 'quit' Removing socket 5 Can't open /usr/local/lib/games/crossfire/players/Rouland.pl Can't open /usr/local/lib/games/crossfire/players/Rouland.pl Saving map /city/city Adding socket 5 from 192.9.200.10. socket[anon5]: version Command: 'version' socket[anon5]: name roy Command: 'name roy' socket[roy]: set pixmaps Command: 'set pixmaps' socket[roy]: add hypatia:0.0 Command: 'add hypatia:0.0' Program received signal 11, Segmentation fault 0x39bd0 in draw_color_pix (pl=0x14ef30) at xio.c:2113 2113 XSetClipMask(pl->contr->gdisp, pl->contr->gc_game, pl->contr->masks[floor->number]); (gdb) where #0 0x39bd0 in draw_color_pix (pl=0x14ef30) at xio.c:2113 #1 0x38bfc in draw (pl=0x14ef30) at xio.c:1905 #2 0x1bb1c in process_events () at main.c:467 #3 0x1c2d4 in main (argc=2, argv=0xeffffcd4, env=0xeffffce0) at main.c:669 I assume I shouldn't be sedning this sort of stuff to the whole crossfire list? Is there a crossfire_bug list, or anything like that? From crossfire-request Wed Mar 9 01:05:39 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 01:05:37 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA21761; Tue, 8 Mar 1994 19:02:29 +0500 Date: Tue, 8 Mar 1994 19:02:29 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403090002.AA21761@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 963 Status: RO Is this a local problem, or a problem with the code? roy@hypatia (44) % crossclient -server eckserver Matching fonts to crossfire: 0 () Trying to fix fontpath for hypatia:0.0. X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 51 (X_SetFontPath) Value in failed request: 0x0 Serial number of failed request: 5 Current serial number in output stream: 6 roy@hypatia (44) % crossclient -server eckserver Matching fonts to crossfire: 0 () Trying to fix fontpath for hypatia:0.0. X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 51 (X_SetFontPath) Value in failed request: 0x0 Serial number of failed request: 5 Current serial number in output stream: 6 We've tried having he .pcf and .bdf files in /usr/lib/X11/fonts/misc and in the directory specificied as fontpath by crossfire -o. It never finds it.. From crossfire-request Wed Mar 9 00:59:55 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 00:59:53 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA21595; Tue, 8 Mar 1994 18:56:44 +0500 Date: Tue, 8 Mar 1994 18:56:44 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403082356.AA21595@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 693 Status: RO Oh oh.. Core dump. :) (gdb) where #0 0xef761120 in kill () #1 0xef77949c in abort () #2 0x116cc in fatal_signal (make_core=1, close_sockets=1) at init.c:472 #3 0x114e4 in rec_sigsegv (i=11) at init.c:429 #4 0xef737c54 in _sigtramp () #5 0x39bd4 in draw_color_pix (pl=0x2cf4cc) at xio.c:2113 #6 0x38bfc in draw (pl=0x2cf4cc) at xio.c:1905 #7 0x1bb1c in process_events () at main.c:467 #8 0x1c2d4 in main (argc=3, argv=0xeffffcc4, env=0xeffffcd4) at main.c:669 We are going to recompile with every possible 'unsafe' thing turned off. When I tried to compile, it'd never compile map.c, but it did for a friend, so we are just using his... (And fonts never have worked for us. :( ) From crossfire-request Tue Mar 8 23:12:39 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 23:12:35 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA19619; Tue, 8 Mar 1994 17:09:22 +0500 Date: Tue, 8 Mar 1994 17:09:22 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403082209.AA19619@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 159 Status: RO With all these little bug messages, maybe there can be a 90.2pl1 put up in a few days with all the bugs patched out? :) I can't keep track of what to fix... From crossfire-request Tue Mar 8 21:15:43 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 21:15:42 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA12985; Tue, 8 Mar 1994 15:12:28 +0500 Date: Tue, 8 Mar 1994 15:12:28 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403082012.AA12985@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 346 Status: RO Problem in the Imakefile in ./server. We kept getting an error message about loop detected. In the other Makefiles BINDIR was /usr/bin/X11, but in server it was BINDIR = ${C_BINDIR} which was the loop... (Maybe it's (C_BINDIR), you get the idea. :) (We could have caused this, but maybe someone more knowledgable in Imakefiles can check it... From crossfire-request Sat Mar 12 17:32:28 1994 Return-Path: Received: from aino.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 17:32:26 +0100 Received: from localhost (hevi@localhost) by aino.it.lut.fi (8.6.5/8.6.5/1.12.kim) id SAA09406; Sat, 12 Mar 1994 18:32:23 +0200 Date: Sat, 12 Mar 1994 18:32:22 +0200 (EET) From: Petri Heinil{ Subject: Re: Setuid????? To: crossfire@ifi.uio.no In-Reply-To: <19940312092553.9286.menja.ifi.uio.no@ifi.uio.no> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Sat, 12 Mar 1994, Kjetil Torgrim Homme wrote: > You don't have to change the server, just change permissions: > > chmod u+s bin/crossfire > chmod -R go-rwx lib/maps > > (change filenames to fit :-) > > Do note that there _may_ be security leaks in Crossfire, and there's a > chance someone can exploit it to remove files or similar. (I would not > dare make CrossEdit setuid, for instance, but I haven't checked to see > if my fears are justified.) I would not dare also, because user can define the programs in resources, what to run (selections "CrossFire","Reset"). ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Sat Mar 12 10:25:54 1994 Return-Path: Received: from menja.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 10:25:53 +0100 From: Kjetil Torgrim Homme Received: from localhost by menja.ifi.uio.no ; Sat, 12 Mar 1994 10:25:53 +0100 Date: Sat, 12 Mar 1994 10:25:53 +0100 Message-Id: <19940312092553.9286.menja.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: beilby@latcs1.lat.oz.au's message of Sat, 12 Mar 1994 18:09:11 +1000 (EST) <199403120809.AA05258@ipc6.lat.oz.au> Subject: Re: Setuid????? Status: RO You don't have to change the server, just change permissions: chmod u+s bin/crossfire chmod -R go-rwx lib/maps (change filenames to fit :-) Do note that there _may_ be security leaks in Crossfire, and there's a chance someone can exploit it to remove files or similar. (I would not dare make CrossEdit setuid, for instance, but I haven't checked to see if my fears are justified.) Kjetil T. From crossfire-request Sat Mar 12 10:09:44 1994 Return-Path: Received: from latcs1.lat.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 10:09:42 +0100 From: beilby@latcs1.lat.oz.au Received: from ipc6.lat.OZ.AU by latcs1.lat.oz.au (5.67b/1.34) id AA23615; Sat, 12 Mar 1994 18:09:18 +1000 Message-Id: <199403120809.AA05258@ipc6.lat.oz.au> Subject: Setuid????? To: crossfire@ifi.uio.no Date: Sat, 12 Mar 1994 18:09:11 +1000 (EST) X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 731 Status: RO Hi all, I've got a (probably stupid) question about setting the user id, which is mentioned in variouse places (ie config.h). From what I've read about it (man pages), it will allow me to have the server setup so that when others run it, it has my id, and therfore I don't need to have the maps accessable to everyone. The question is, how the heck do I get the program to do this????? / / / / __ And how can this be? )--/+-+-+-+--- ' \ - Because HE IS THE KWISATZ HADERACH!!! (8| Scorpius>\___/ // )--\+-+-+-+--- \\ // \ \ \ \ Dougal Beilby (beilby@latcs1.lat.oz.au) \X/ A4000/030 From crossfire-request Sat Mar 12 08:55:16 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 08:55:13 +0100 Received: by bolero.rahul.net id AA13434 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 11 Mar 1994 23:55:11 -0800 Date: Fri, 11 Mar 1994 23:55:11 -0800 From: Mark Wedel Message-Id: <199403120755.AA13434@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: Developer list. Status: RO Probably about time to send this out again: Here is a short list of people who said specifically that they want to be on the developement team, and what they have worked on. Jari Vanhala - re-did input handling (1) Peter Mardahl runes, new spells, changing of spell parameters, new archetypes Tyler Van Gorder added color stuff, interested in working on client side (user interface) David.M.Fisher@Dartmouth.EDU (David M. Fisher) quinet@montefiore.ulg.ac.be (Raphael Quinet) Rupert G. Goldie testing under Purify, new spells, spell paths, and gifts. 'Evil' ERic Mehlhaff Client server, also works with Peter Mardahl Frank Tore Johansen - misc. Note 1: His patches will be in Crossfire 0.90.2 --Mark From crossfire-request Sat Mar 12 01:02:14 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Sat, 12 Mar 1994 01:02:10 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id QAA03601; Fri, 11 Mar 1994 16:01:59 -0800 Date: Fri, 11 Mar 1994 16:01:59 -0800 From: Peter Mardahl Message-Id: <199403120001.QAA03601@soda.berkeley.edu> To: bjornlu@ifi.uio.no, crossfire@ifi.uio.no Subject: Re: Death, graveyards & deposit boxes Status: RO Death: Personally, I don't think its very much fun always having to start new characters up. That is why I'm in favor of NOT_PERMADEATH or RESURRECTION. Of the two, I favor NOT_PERMADEATH. You're punished by dying, but you are not stuck with the task of starting aup an a new character, slogging through maps which you're very familiar with, just so that you can go exploring in more dangerous areas. Seriously, the FIRST time you build up a character it's fun. The sixth or seventh isn't, it becomes work, not play. Thnk twice before installing a system which makes it no fun to play. Dying should be punished, but having to go back to square one every time would really suck. As often as not, the server kills you somehow. Netlag, whatever. At some point, there will probably be a public server at Berkeley, but I won't want to play there, since I'll be server god. Its no fun to play where you make all the rules. I will either use NOT_PERMADEATH or an even easier version of RESURRECTION, so that you could bring someone back by paying a fee someplace. I think that stats should be nailed by dying, but NOT all the way down to 3. Comon, a character with a con of 3 is a walking corpse. If some monster looks at him the wrong way he'll drop dead again. You could pay 80k gold for potions, but what if you cannot afford it? You have a useless character that may as well be dead, or you have to go through a lot of pain to build up cash to buy potions. I would do things this way: NOT_PERMADEATH until there are several players of a high enough level to bring people back. Announce that the world is changing, and set up a quest to learn the secrets of life. When several people have resurrection spells, go to RESURRECTION. I would only use RESURRECTION also if the server was stable enough so that people could rely on recovering bodies and some possessions. Regards, PeterM From crossfire-request Fri Mar 11 23:55:02 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 23:54:45 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id OAA26712; Fri, 11 Mar 1994 14:54:06 -0800 Date: Fri, 11 Mar 1994 14:54:06 -0800 From: Peter Mardahl Message-Id: <199403112254.OAA26712@soda.berkeley.edu> To: av5410@sjfc.edu, crossfire@ifi.uio.no Subject: Re: What went wrong? Status: RO Alex, one source of your problem with random images all over the screen is this: if your system administration installed the crossfire font in /usr/X11/misc/font or someplace like that, that font is what crossfire will use. If the font doesn't match what the new version of crossfire wants you get garbage. Check to see if you are using the correct font, use the xset command (man it...) PeterM From crossfire-request Fri Mar 11 23:37:07 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 23:37:06 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id OAA01216; Fri, 11 Mar 1994 14:36:53 -0800 From: Tyler Van Gorder Message-Id: <199403112236.OAA01216@corpse.ecst.csuchico.edu> Subject: Re: BUGs in .90.2 To: matt@cs.odu.edu (Matthew Zeher) Date: Fri, 11 Mar 1994 14:36:52 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: <199403111833.NAA21372@breeze.cs.odu.edu> from "Matthew Zeher" at Mar 11, 94 01:33:41 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 232 Status: RO Actually Matt, there has been a lot of talk about moving to client/server... after we get a stable version of the current implementation. Anyway, stay tuned hopefully we can get that baby running like a true client/server. Tyler. From crossfire-request Fri Mar 11 21:02:38 1994 Return-Path: Received: from sfi.santafe.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id ; Fri, 11 Mar 1994 21:02:34 +0100 From: scott@santafe.edu Received: from coronado (coronado.santafe.edu) by sfi.santafe.edu (4.1/SMI-4.1) id AA02079; Fri, 11 Mar 94 13:08:42 MST Received: by coronado (4.1/SMI-4.1) id AA09740; Fri, 11 Mar 94 13:08:33 MST Date: Fri, 11 Mar 94 13:08:33 MST Message-Id: <9403112008.AA09740@coronado> To: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= Cc: crossfire@ifi.uio.no Subject: Death, graveyards & deposit boxes In-Reply-To: Your message at 19:53:03 on Fri, 11 March 1994 References: Status: RO >>>>> "bjornlu" == bjornlu writes: bjornlu> Adventuring possibilities: bjornlu> "Now, here's the key to a deposit box at Wiener's in Santo Dominion, bjornlu> where is the cash?" bjornlu> "Wow! A key to a deposit box! Let's get back to town and see bjornlu> if there's anything in it!" I sorta like this... now in crossfie (89 something?) you just run around and bash things...and there are two cases.... you're either way to weak and you get creamed by just entering the location or you're way too strong and you go to sleep in the middle of the floor while hundreds of things are attacking you and you don't take any damage (ala crossfire and nethack) I really would like to see "quests" of some sort... right now, I just start a new game of crossfire, take 3 minutes to get to 5th level so I don't just die.. and then I just get bored as I do my "quest" of simply trying to find artifacts. Scott From crossfire-request Fri Mar 11 20:51:42 1994 Return-Path: Received: from chrysanthemum-bb by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 20:51:41 +0100 Received: from breeze.cs.odu.edu (matt@breeze.cs.odu.edu [128.82.6.23]) by chrysanthemum-bb (8.6.4/8.6.4) with ESMTP id OAA26135 for ; Fri, 11 Mar 1994 14:42:27 -0500 From: Matthew Zeher Received: from localhost (matt@localhost) by breeze.cs.odu.edu (8.6.4/8.6.4) id OAA21437; Fri, 11 Mar 1994 14:53:46 -0500 Date: Fri, 11 Mar 1994 14:53:46 -0500 Message-Id: <199403111953.OAA21437@breeze.cs.odu.edu> To: crossfire@ifi.uio.no Subject: Bugs thanx Status: RO Thank you to whomever posted ther reason crossfire crashed when someone died ( having to do with tmp->x=x tmp->y=y and x and y not being intialized ). This is a 5 second fix that eliminated 75% of the crashes at our site (people die alot here?!?!). It turns out that in Do_some_liveing() in player.c everything below : draw_info(op,"Do you want to play again (a/q)?"); needs to be copied to within the #ifndef NOT_PERMADEATH section, (if you've got NOT_PERMADEATH defined, if not do it anyway and remove the tmp->x=x;tmp->y=y; line it should not be in there. ) thanks agaian to whoever posted that fix.... matt matt@cs.odu.edu From crossfire-request Fri Mar 11 20:43:03 1994 Return-Path: Received: from flipper.pvv.unit.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 20:43:03 +0100 Received: from nova.pvv.unit.no (nova.pvv.unit.no [129.241.36.207]) by flipper.pvv.unit.no (8.6.5/8.6.5) with SMTP id UAA24175; Fri, 11 Mar 1994 20:43:01 +0100 From: Kjetil Wiekhorst J|rgensen Received: by nova.pvv.unit.no ; Fri, 11 Mar 94 20:42:59 +0100 Date: Fri, 11 Mar 94 20:42:59 +0100 Message-Id: <9403111942.AA08513@nova.pvv.unit.no> To: av5410@sjfc.edu, crossfire@ifi.uio.no Subject: Re: What went wrong? Status: RO The font ???? Kjetil From crossfire-request Fri Mar 11 20:29:06 1994 Return-Path: Received: from uu3.psi.com by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 20:29:02 +0100 Received: from sjfc.edu by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet) via SMTP; id AA09893 for crossfire@ifi.uio.no; Fri, 11 Mar 94 14:28:56 -0500 Received: by sjfc.edu (5.65/Ultrix3.0-C) id AA17830; Fri, 11 Mar 1994 14:27:47 -0500 Date: Fri, 11 Mar 1994 14:27:47 -0500 (EST) From: Alex Villamil Subject: What went wrong? To: crossfire@ifi.uio.no Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO When crossfire first starts up, the map window has all different kinds of weird stuff all over the place. What I mean is, things aren't in any kind of order. You'll have walls, treasures, and pieces of different monsters all over the place. What could be wrong? I've built 90.2 raw and put in the 90.2 maps. Alex -------------------- Alex Villamil av5410@sjfc.edu -------------------- From crossfire-request Fri Mar 11 20:26:06 1994 Return-Path: Received: from flipper.pvv.unit.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 20:26:05 +0100 Received: from nova.pvv.unit.no (nova.pvv.unit.no [129.241.36.207]) by flipper.pvv.unit.no (8.6.5/8.6.5) with SMTP id UAA23940; Fri, 11 Mar 1994 20:25:59 +0100 From: Kjetil Wiekhorst J|rgensen Received: by nova.pvv.unit.no ; Fri, 11 Mar 94 20:25:58 +0100 Date: Fri, 11 Mar 94 20:25:58 +0100 Message-Id: <9403111925.AA08207@nova.pvv.unit.no> To: crossfire@ifi.uio.no Subject: Patch for client.c Cc: jorgens@pvv.unit.no Status: RO Patch for systems which lack the gethostname(3) library call. You might want to remove the prototypes for some function calls. I've stopped using sunos.h, osf.h and sgi.h since I mean it's a waste of resources to include those files in all the c files. Kjetil diff -cr crossfire-0.90.2-patched/client/client.c crossfire-0.90.2/client/client.c *** crossfire-0.90.2-patched/client/client.c Thu Mar 10 13:44:16 1994 --- crossfire-0.90.2/client/client.c Fri Mar 11 20:18:26 1994 *************** *** 41,46 **** --- 41,49 ---- #include #include #ifdef linux + #if defined(__sgi) && defined(SVR4) + #include + #endif # include # include #endif *************** *** 53,58 **** --- 56,92 ---- # endif #endif + #if defined(__osf__) && !defined(__alpha) + unsigned short htons(unsigned short); + int socket(int, int, int); + int gethostname(char *, int); + int connect(int, struct sockaddr *, int); + #endif + #if defined(__sun__) && !defined(SVR4) + int socket(int, int, int); + int connect(int, struct sockaddr *, int); + int gethostname(char *, int); + int fprintf(FILE *, char *, ...); + int sscanf(char *, char *, ...); + void perror(char *); + void fflush(FILE *); + int system(char *); + int fclose(FILE *); + int fputs(char *, FILE *); + #endif + + #ifndef NAME_MAX + # ifdef _POSIX_NAME_MAX + # define NAME_MAX pathconf("/dev/null", _POSIX_NAME_MAX) + # else + # ifdef MAXHOSTNAMELEN + # define NAME_MAX MAXHOSTNAMELEN + # else + # define NAME_MAX 256 + # endif + # endif + #endif + #include /* Sad to include the whole thing, only need libproto.h */ #include *************** *** 178,188 **** { char localhostname[65+6]; ! if (gethostname(localhostname, 65)) ! { fprintf(stderr, "Can't get local hostname.\n"); perror("gethostname "); } sprintf(localdispname, "%s%s", localhostname, dispname); dispname = localdispname; } --- 212,228 ---- { char localhostname[65+6]; ! #ifdef SVR4 ! if (sysinfo(SI_HOSTNAME, localhostname, NAME_MAX) <0) { ! fprintf(stderr, "Can't get local hostname.\n"); ! perror("%s: SI_HOSTNAME"); ! } ! #else /* Assume BSD */ ! if (gethostname(localhostname, NAME_MAX) < 0) { fprintf(stderr, "Can't get local hostname.\n"); perror("gethostname "); } + #endif /* SVR4 */ sprintf(localdispname, "%s%s", localhostname, dispname); dispname = localdispname; } From crossfire-request Fri Mar 11 19:53:09 1994 Return-Path: Received: from gyda.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 19:53:08 +0100 From: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= MIME-Version: 1.0 Received: from localhost by gyda.ifi.uio.no ; Fri, 11 Mar 1994 19:53:04 +0100 Date: Fri, 11 Mar 1994 19:53:03 +0100 To: crossfire Subject: Death, graveyards & deposit boxes Message-ID: Status: RO After having read some ideas and comments, this is my view on how death, graveyards and deposit boxes should be in Crossfire. Contributors to my view: Tero Haatanen Peter Mardahl Death ===== If you die, a corpse is created, which isn't immune to everything, but has quite a lot of hp. Say 2000. Then it is destroyed. If you die in front of a dragon, and the dragon continues to breate fire on your corpse while your buddies kill it, the corpse takes damage. Say it takes 500 hp damage. When the smoke clears, your buddies see your corpse lying on the ground and all go "whooah, let's get back to town and resurrect him!". To explain further, this is how I want the spells to be. Raise dead.........: Raise, -500 hp. Resurrect (dead?)..: Raise, no modification. Reincarnation......: Raise, +500 hp. Now then. The remaining hp of your corpse when the resurrection attempt on you is made is the amount of the old character that is put into the resurrected one. Meaning: If your buddies were poor and only could afford the raise dead-spell, you would only get 50% (1000/2000) of everything (stats, xp) back. And, your con/cha would be 3. (After all, you're neither pretty nor fit when you raise from the dead) If they could afford the resurrect-spell, you would come back 75% (1500/2000) of your old self, and if they were fortunate enough to be able to afford the powerful reincarnation spell, you would come back with 100% of your stats/xp. (with con/cha at 3, though) So, if the body is very damaged (less than 500 hp left), a raise dead-spell will not be able to resurrect the character at all. Then, you can wipe your tears and stroll across the street to the undertaker. Technical details: maxhp and maxsp of the corpse is the players, sp=0 and hp=2000. Slaying is the players password, name is name minus the "corpse of"-part. The stats all are the players. Other_arch is killed by. The corpse is saved to the map as the player dies, and again when all players have left the map. If they took the corpse with them, it is removed from the map. If players happen to die in gates or similar, the corpses are destroyed after a while (crushed by gate, like any other item). If you die in a doorway, the door is placed on top of your corpse. When the door is opened/bashed open, the corpse is revealed. If you die on a button, you did just that - die on a button. Of course, your corpse stays there. Graveyards ========== When you've collected yourself, the undertaker is ready to take care of business. His excellent store carries the finest selection of monuments, coffins and shovels for your pleasure. You simply walk in with a corpse under your arm, pick up and pay for the monument and coffin you want to put on/in the grave, buy a shovel, and off you go to the graveyard. You apply the shovel, put the corpse in the coffin (it's a container (heavy one)) drop the coffin and the monument, and apply the monument. The monument is put up, with the name/title on it, killed by and maybe even a few words of remembrance (taken from some kind of cookie file?). Technical details: The map is saved each time a monument is applied on it. Deposit boxes ============= A special type of key is used to get into the deposit boxes. You have to apply it, and then, when you step into the teleporter in the bank, you are teleported to the deposit box that belongs to the map. Each key has a number on it, and is indestructable. They are saved to maps in the same manner as corpses. When you step into the teleporter, you arrive in a room (say 4x4), with a teleporter in one of the corners. When you step into the teleporter, you are teleported back to the bank. Technical details: When you step into the bank-teleporter, you are teleported to the map in the slaying-column of the key. When you leave the deposit box-map, the map is saved. You cannot die in a deposit box, no food is deducted during your stay. It is also a no-magic-zone. Adventuring possibilities: "Now, here's the key to a deposit box at Wiener's in Santo Dominion, where is the cash?" "Wow! A key to a deposit box! Let's get back to town and see if there's anything in it!" Just some ideas, in the heat of the moment I probably forgot half of what I wanted to say anyway. Comments are very welcome. - Regards, Bjorn. From crossfire-request Fri Mar 11 19:31:27 1994 Return-Path: Received: from chrysanthemum-bb by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 19:31:21 +0100 Received: from breeze.cs.odu.edu (matt@breeze.cs.odu.edu [128.82.6.23]) by chrysanthemum-bb (8.6.4/8.6.4) with ESMTP id NAA25272 for ; Fri, 11 Mar 1994 13:22:22 -0500 From: Matthew Zeher Received: from localhost (matt@localhost) by breeze.cs.odu.edu (8.6.4/8.6.4) id NAA21372; Fri, 11 Mar 1994 13:33:41 -0500 Date: Fri, 11 Mar 1994 13:33:41 -0500 Message-Id: <199403111833.NAA21372@breeze.cs.odu.edu> To: crossfire@ifi.uio.no Subject: BUGs in .90.2 Status: RO This new version of crossfire has quite a few bugs in it if you haven't noticed. The server crashes all the time. Problems encountered thus far: -Frequently crashes when multiple people start at the same time when using crossclient. -Frequently crashes on death of a player. -Frequently screws up maps ( ie. a player can get traped in a seperate map from the rest of the players, crossfire creates two seperate versions of the same map) -If crossfire doesn't crash imedialtly on the death of a player it most of the time brings the player back (NO_PERMANENTDEATH defined) with screen of the first town and no visable icon. -color pixmaps don't work and randomly machines that define -pix sometimes get them sometimes not. Its wierd. Now did you think I would give you all these bugs with out some solutions?? No. I am not real familuar with the code, I haven't even looked at it since 89.1 when I did some modifications locally. But I did get some personal hackc on this version to work. The crashes usally 95% of the time are generated by sigbus (bus error) which is worse than a segfault, because you can check for NULL pointers by you can't really check if you going to be out of range or not. This screems on fatal flaw.... NO INTIALIZATION. Now I tried to intialize the variables that caused the crashs the most but as I said I'm not that familar with the code...YET. I did however solve the problem of crashes on multiple logins. It seems that when someone enters or exits a map it sends a message to everyones screen when this happens to a player who's in the process of coming up, it generates a sigbus on the Draw_Info to that players socket. I used an ugly hack that basically won't let crossfire send Draw_Info to everyones screen when anyone is in the process of bringing there windows up. I won't submit a patch for that, since it is an ugly work around. Also the someone left out the command line option of -xpm in client.c, this real easy to fix. So I put my version of client.c up on ftp.ifi.uio.no in the incoming dir client.c.gz. For those of you who want color pixmaps. On a more positive note, those of you who have worked on this have done a great job. I saw some impressive useage of code when HACKing through it. I like the plan of eliminating all the unbalanced maps, although that left it kind of bare in terms of palyable maps. But still I think its an overall improvement. It just means that those of you who don't do code but still wish to contribute need to make more maps. I have started work on tring to see if I can get a basic working (not faked like it is now) client/server model running for crossfire. I don't know how far I'll get but I'm nearly complete as far as coding goes of the client I'll wait for the next version to start on the server. Is there a reason this hasn't been done before? Just not enough time to major of a revision? Anybody care to discuss this?? Matt matt@cs.odu.edu From crossfire-request Fri Mar 11 16:40:03 1994 Return-Path: Received: from munnari.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 16:39:58 +0100 Received: from orthanc.cs.su.OZ.au by munnari.oz.au with MHSnet (5.83--+1.3.1+0.50) id AA02971; Fri, 11 Mar 1994 23:22:25 +1000 (from ftww@orthanc.cs.su.OZ.au) Message-Id: <9403111322.2971@munnari.oz.au> Subject: Re: Graveyards and banks To: crossfire@ifi.uio.no Date: Fri, 11 Mar 1994 23:22:12 +1000 (EST) From: "Fred the Wonder Worm" In-Reply-To: <199403102011.WAA05584@hilja.it.lut.fi> from "Tero Haatanen" at Mar 10, 94 10:11:29 pm X-Face: )\c`u_%V|7EQUDUt%5v'IJ?=@^Wf^<#,~CjzL`/2q0=-O6XW/Z8A2j.kgg:| 7|YZPSxy}rIuw8qD|/cQZ9^6kb:1XLleXhOl-U>(c~d`bC)%7FItZOUEw?=x%TBQ~NFJ,U|3wi[jzXd5-bMC Reply-To: ftww@cs.su.oz.au Content-Type: text Content-Length: 3457 Status: RO Be warned. There follows much shameless plugging of my idea for banks and depositories. > The banks/deposit boxes can be implemented (at least) two main way. > The first is saved maps and the second is saved containers (or special > squares). I myself prefer to save whole maps, but saved squares might > not be that bad idea (mark every square in map as saveable so you save > whole map!). The best solution is probably implement both, since it isn't > too much extra code. > > And more about permanently saved maps. The biggest problem with banks > isn't that when player dies, nobody won't get the stuff from there, > but that a new 1st level character comes and empties it (i.e. takes > all best armors and weapons from there). All deposit boxes should be > very much available from only one character. Also I prefer normal game > mechanism of getting stuff from deposit boxes (i.e. special keys, > passwords, using normal maps, etc.). With the method I proposed, this could not occur: a character going into a bank/depository will only see the items they left there, and hence can't steal somone else's stuff. As for the saving part, I sort of see it acting like this: ---+ +----+ +--+ P # ==> # P @| ==> |@P| ---+ +----+ +--+ 1 2 3 Player P (in room 1) enters door '#'. This door, leading to a map marked 'special', creates a new instance of the map and puts P in it (room 2). This room has a shop-type teleporter (@). Stepping onto it takes P into room 3. It also has another effect, that of triggering the archetype in room 3 which loads the objects P has already saved. In the diagram, P is on top of this archetype. Also, this shop mat could charge P for the outstanding fees s/he has accumulated, and not allow P in if they can't pay enough. When P has finished making transactions, s/he leaves via the teleporter. This triggers the saving of the items left behind in room 3. Now, the reasons I like this system are as follows: 1) Characters cannot steal another player's items (without stealing the player's name - the entrance is effectively locked on name). 2) The bank/depository _always_ has a spare room for you to use. I regard this as a good idea. While some details of the implementation probably need revising, I think this is a workable plan. > Passwords are available everyone and not very save solution, so the key is > the best solutions which comes to mind. It's easy implement, just buy key > from the bank/inn and carry it with you. The problems raises when someone > destroys keys, since those rooms can not be used any longer. Solution is > of course made keys impossible to destroy and save them like corpses. When > someone comes corpse, (s)he can empty your goods and resurrect your > body if possible. Another possibility would be doors locked by player's > name so no one else can't get through it. Very safe, but it's any better? > The key feels more realistic, IMHO. As described above, there is no need for any keys, so this problem does not arise. The contents are effectively locked by name, but in a transparent way. Cheers, Geoff. ------------------------------------------------------------------------------- Geoff Bailey (Fred the Wonder Worm) | Programmer by trade -- ftww@cs.su.oz.au | Gameplayer by vocation. ------------------------------------------------------------------------------- From crossfire-request Fri Mar 11 12:07:25 1994 Return-Path: Received: from flipper.pvv.unit.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 12:07:24 +0100 Received: from nova.pvv.unit.no (nova.pvv.unit.no [129.241.36.207]) by flipper.pvv.unit.no (8.6.5/8.6.5) with SMTP id MAA15598; Fri, 11 Mar 1994 12:06:59 +0100 From: Kjetil Wiekhorst J|rgensen Received: by nova.pvv.unit.no ; Fri, 11 Mar 94 12:06:57 +0100 Date: Fri, 11 Mar 94 12:06:57 +0100 Message-Id: <9403111106.AA01609@nova.pvv.unit.no> To: eneq@meryl.csd.uu.se, roy@eckerd.edu Subject: Re: Cc: crossfire@ifi.uio.no, jorgens@pvv.unit.no Status: RO >>Problem in the Imakefile in ./server. We kept getting an error message >>about loop detected. In the other Makefiles BINDIR was /usr/bin/X11, >>but in server it was BINDIR = ${C_BINDIR} which was the loop... >>(Maybe it's (C_BINDIR), you get the idea. :) The declaration of BINDIR is not causing the loop as far as I can see, but in order to help I would need your Makefile, and the exact error message from make. >>(We could have caused this, but maybe someone more knowledgable in Imakefiles >>can check it... > The problem comes from a statement that is generated if you define > HAVE_XPM and looks something like this. > XPM_DEFINES = ... /* Initial decl. */ > . > . > . > XPM_DEFINES = $(XPM_DEFINES) ... /* Post-initial decl. */ This will cause a loop on all the systems I've got. This happens because XPM_DEFINES points to XPM_DEFINES which agian points to XPM_DEFINES, etc.. > The problem is caused by the second statement which is detected > as an infinite loop, no so strange :-). A temporary way to fix it > is to put them on the same line. The author can fix it in a later > release. > Previous it looked something like this; > XPM_DEFINES = ... > . > . > . > XPM_DEFINES += ... > which is legal for gnumake (I think) but other doesn't recognize it. The += syntax is legal in Sun's and FSF's make, but most others does not allow the use of the += operator. I order to fix this one should do something like this. DEF1= DEF2= . . . XPM_DEFINES = $(DEF1) $(DEF2) ...... $(DEFN) > /Eneq Kjetil From crossfire-request Fri Mar 11 09:31:32 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 09:31:30 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id AAA13383 for crossfire@ifi.uio.no; Fri, 11 Mar 1994 00:31:19 -0800 Date: Fri, 11 Mar 1994 00:31:19 -0800 From: Peter Mardahl Message-Id: <199403110831.AAA13383@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: spells.c seriously gutted Status: RO About 30 of the soda spells are missing from the spells.c in version 90.2. This breaks a lot of the runes--runes of summoning won't work, the suporting spell is not there. Same with runes of restoration, transferrence, magic drain..... lots of the cool ones. My machine is down, so I don't have a backup of a previous version's spells.c to fix it. Perhaps mark has a copy. PeterM From crossfire-request Fri Mar 11 14:55:41 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 14:55:39 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA15627; Fri, 11 Mar 1994 08:52:13 +0500 Date: Fri, 11 Mar 1994 08:52:13 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403111352.AA15627@acasun.eckerd.edu> To: eneq@meryl.csd.uu.se, jorgens@pvv.unit.no, roy@eckerd.edu Subject: Re: Cc: crossfire@ifi.uio.no Content-Length: 220 Status: RO To fix the loop detected error, just look for the second BINDIR line in the Makefiles... BINDIR is set to something at the top of the Makefile, and C_BINDIR is set to BINDIR, and then later BINDIR is set to C_BINDIR... From crossfire-request Fri Mar 11 01:42:21 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Fri, 11 Mar 1994 01:42:02 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA19901; Fri, 11 Mar 1994 10:40:58 +1000 Date: Fri, 11 Mar 1994 10:40:58 +1000 From: "Rupert G. Goldie" Message-Id: <199403110040.AA19901@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no Subject: Old maps may break with new archetypes Status: RO The 0.90.2 archetypes file has changed the warrior object to warrior_1 and has made a new warrior object that has type set to 1 (ie it's a player). This breaks any old maps that have warriors in them (when the map is loaded it thinks each warrior is a player, but it doesn't have all the player bits filled in so you very soon dereference a null pointer and Crossfire falls over). The fix is to change all occurences of warrior in your old maps to warrior_1 (with a text editor, crossedit falls over too 8-) Rupert From crossfire-request Thu Mar 10 23:51:46 1994 Return-Path: Received: from hilja.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 23:51:45 +0100 Received: from localhost (haatanen@localhost) by hilja.it.lut.fi (8.6.5/8.6.5/1.12.kim) id AAA08721; Fri, 11 Mar 1994 00:51:44 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403102251.AAA08721@hilja.it.lut.fi> Subject: Re: resurrection--how it SHOULD have worked :( To: crossfire@ifi.uio.no Date: Fri, 11 Mar 94 0:51:42 EET In-Reply-To: <199403102121.NAA19889@soda.berkeley.edu>; from "Peter Mardahl" at Mar 10, 94 1:21 pm X-Mailer: ELM [version 2.3 PL11] Status: RO From: Peter Mardahl > Okay, there's apparently lots of confusion on the resurrection > spells. Maybe not confusion, just no info :) > raise-dead: requires a corpse and a .dead file. > resurrection: requires a corpse and a .dead file, but doesn't exact > as much of an experience penalty and leaves stats alone. I think that stats should be lost for ever, but this again requires some more code. > The immunity was how I later checked for player-corpseness. Who talks kludges now :) > Bad ideas: saving all the information necessary to resurrect a plyer > in the corpse/gravestone: uh, when dead, a player becomes an object. The biggest problem with .dead files currently for me was that you could make new character with same name that .dead characher was and nothing deleted those dead files. No problem if it was just a bug. I thought that player information could be saved in file, which would work as a lock file. Yes, same effect. > Also, lose the gravestone to a crash, you lose the person forever. > No recalling him then. seems very unfair to me. Idea was that they are saved separately, so possibilities losing them keeps the same. And crossfire shouldn't crash :). And there don't seems any possibilities die permanently with your system, no good either, IMHO. I like the idea of resurrection WITH some random change to fail. And not making it too easy, either. All these graveyard stuff was only possibilities using the bank/inn- code give some more colour the crossfire, and I myself like it a lot. And when players makes gravestones themself, you only need to offer good map to put them. :) I like more that when player dies there is only corpse and some random stuff from players inventory (like currently). Player who finds corpse can carry it a way and use raise dead/resurrect spell to take player back to life. If corpse is inserted map, which is reseted, there aren't those special cases, just check the free squares. So only difference between your system and my prososal is reincarnation spell and with my proposal you could kill server between dying/resurrection (corpse is save). Maybe it's only me who feels that reincarnation is too powerful i.e. if you have any character who can cast reincarnation, you don't need worry about that you died between who big dragons. Thanks your comments, cleared many things! And very happy that you fix resurrect part :). I'm more interesting making inns working and that shouldn't be that big project. More comments are always welcome ! -Tero From crossfire-request Thu Mar 10 22:37:21 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 22:37:19 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA23907 for crossfire@ifi.uio.no; Thu, 10 Mar 1994 13:37:15 -0800 Date: Thu, 10 Mar 1994 13:37:15 -0800 From: Peter Mardahl Message-Id: <199403102137.NAA23907@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: graveyards Status: RO Inserting gravestones permanently into maps might be fun, but I can't see any straightforward way to do it. The advantage of the resurrection system I installed, is that it involves changes to only 2 places in player.c, no screwing with map code, and three new spells. the only things changed about player.c was the login routine, which checks to make sure you're not trying to use the same name as a .dead player, and in the actual death part, where instead of getting erased, you're saved without stuff and moved to .dead, and a corpse with your name is inserted into the map. All this map hacking proposed may be lots of fun, but it is a very big project, and I'm very leery of screwing with the maps with the server. I don't trust the server not to mess up and stick gravestones in bad places. We all know about how stable the server is. Also, gravestones in the map may be stuck in bad places. What if someone dies on a button? Uh, you insert a gravestone on a button. This leads to a nightmare of special case code--no gravestones in doorways, on buttons, near grates, covering important signs...... I like the idea of a graveyard, and an easy way to implement it would be to read all the .dead files around, and give gravestones with those names..... Regards, PeterM P.S., I'll fix all the resurrection problems ASAP and add a mode where no .dead files are made. I didn't foresee people seeing deleting .dead files regularly as a chore--I was planning to do it in a crontab. I'm sorry about all the bugs, all I can say is I'm sorry, and that it was working fine once. I'll fix it as soon as I can manage. From owner-crossfire Sat Mar 12 06:48:33 1994 Return-Path: Received: from menja.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 06:48:32 +0100 Received: from localhost by menja.ifi.uio.no ; Sat, 12 Mar 1994 06:48:32 +0100 Date: Sat, 12 Mar 1994 06:48:32 +0100 Message-Id: <19940312054832.5511.menja.ifi.uio.no@ifi.uio.no> To: crossfire-announce@ifi.uio.no From: Mark Wedel Subject: Crossfire 0.90.3 is released Sender: "Kjetil T. Homme" Reply-To: Crossfire discussion list Errors-To: Status: RO This is an announcement of the release of Crossfire 0.90.3. This release does not have many (any?) new features, but rather fixes some bugs. All of the Solaris 2.x patches should now be included. The spells should be fixed up some, and the bug with dying should be fixed. I'm really putting it out so people have a new baseline version to submit patches for. Plus, there seemed to be enough bugs in 0.90.2 to warrant a release. As usual, crossfire-0.90.3.tar.gz contains the program code (as well as pre built archetypes, bitmaps, font and other files.) crossfire-0.90.3.arch.tar.gz contains the unpacked archetype directory. It is not needed for playing. Some changes made, such as merging the chico bitmaps to their proper place, some more pixmaps colored, and removing some temporary files. There is no crossfire-0.90.3.maps file with this release. The maps have hardly changed at all, and don't need a new release. I'll probably make a new map file for 0.90.4. But for now, either get the file crossfire-0.90.2.maps.tar.gz, if this is your first time making crossfire, or if you already have crossfire 0.90.2 installed, just keep using those maps. Mark Wedel master@rahul.net From owner-crossfire Tue Mar 8 01:33:59 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 01:33:58 +0100 Received: from localhost by holmenkollen.ifi.uio.no ; Tue, 8 Mar 1994 01:33:58 +0100 Date: Tue, 8 Mar 1994 01:33:58 +0100 Message-Id: <19940308003358.18094.holmenkollen.ifi.uio.no@ifi.uio.no> To: crossfire-announce@ifi.uio.no Subject: Crossfire 0.90.2 is released From: Mark Wedel Sender: "Kjetil T. Homme" Reply-To: Crossfire discussion list Errors-To: Status: RO Crossfire 0.90.2 is now available for ftp. There are 3 relevant files: crossfire-0.90.2.arch.tar.gz: Unpacked arch distribution. Not needed to play the game, but useful if adding new archetypes, and required if you want to build the spoiler (but I pre-built the spoiler before packing up the source). crossfire-0.90.2.maps.tar.gz: The map files, from chico. You should be able to use the crossfire 0.90.1 maps, or any maps that worked with crossfire 0.90.1. These maps will just be the starting block of the official maps. I plan to move in maps from the old distribution as I check them out to make sure they are good. crossfire-0.90.2.tar.gz: The source itself. Many changes made from 0.90.1. Read the CHANGES file in the distribution for a full list. The major ones are these: New spells, new input method, and fixed random encounters. Note: The .gz prefix means that these were compressed using gzip, and gunzip will be needed to uncompress these files. (I don't know if any of the ftp servers support auto unzipping or conversion to compress.) These will be available on ftp.ifi.uio.no. They should propgate to the mirror sites shortly. Crossfire files are available via FTP from the following sites: Europe: ftp.ifi.uio.no (129.240.64.2) USA: ftp.world.net (192.243.32.18) Oceania: yoyo.cc.monash.edu.au (130.194.9.1) Mark Wedel master@rahul.net From crossfire-request Thu Mar 10 22:21:17 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 22:21:14 +0100 Received: from localhost (peterm@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id NAA19889 for crossfire@ifi.uio.no; Thu, 10 Mar 1994 13:21:09 -0800 Date: Thu, 10 Mar 1994 13:21:09 -0800 From: Peter Mardahl Message-Id: <199403102121.NAA19889@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: resurrection--how it SHOULD have worked :( Status: RO Okay, there's apparently lots of confusion on the resurrection spells. raise-dead: requires a corpse and a .dead file. corpses, when created, are created immune to everything. resurrection: requires a corpse and a .dead file, but doesn't exact as much of an experience penalty and leaves stats alone. reincarnation: requires only a .dead file! This was the spell to use if your player got nuked and his body is "lost". When you died, a 'corpse' was to be placed where you died, which was immune to everything. The immunity was how I later checked for player-corpseness. The corpse's name determined which .dead file was operated on by the resurrection spell, reincarnation is to take an argument which determines which person to move from .dead to living. Death is permanent if you remove the .dead file. Bad ideas: saving all the information necessary to resurrect a plyer in the corpse/gravestone: uh, when dead, a player becomes an object. objects do not have fields for things like passwords, do they? All player specific stuff would hae to be squirrelled away in weird places in the object. Kludge city. Also, lose the gravestone to a crash, you lose the person forever. No recalling him then. seems very unfair to me. When you die, your playerfile is moved to .dead. As a server god, I intended to fry .dead files older than a week or so. You cannot start a new player if there is a .dead file with that name, which barrs people from maliciously killing someone and then putting him beyond the reach of resurrection. All of this was working at one point, I don't know what has it broken now. I'll look into it, and add some ifdefs so we can have a permanent death as well. If you want to nuke players permanently, for now, just remove .dead files. Regards, PeterM From crossfire-request Thu Mar 10 21:11:33 1994 Return-Path: Received: from hilja.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 21:11:32 +0100 Received: from localhost (haatanen@localhost) by hilja.it.lut.fi (8.6.5/8.6.5/1.12.kim) id WAA05584; Thu, 10 Mar 1994 22:11:30 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403102011.WAA05584@hilja.it.lut.fi> Subject: Graveyards and banks To: crossfire@ifi.uio.no Date: Thu, 10 Mar 94 22:11:29 EET X-Mailer: ELM [version 2.3 PL11] Status: RO Here are some comments about resurrection, graveyards, banks and deposit boxes. These are based on ideas of myself and others. Many new ideas about graveyards are from . [ Maybe resurrection code should be removed from next release and taking ] [ back permanent death code from the version 0.90.1. After resurrection ] [ stuff works it could be included main version. We prefer here ] [ permanent death mode, so it would be nice getting working version. ] I haven't looked a resurrection code, so I don't know how it supposed work. Wouldn't it make sense that you need the body of dead player before you could resurrect him/her? There could be the (high level) spell of resurrection, so that another player could resurrect player or in some maps could be a temple where the priest sells resurrection. This would require someone carrying corpse away, but it makes sense somehow. The problem could be that the dragon breath easily destroys corpses, so nothing is left to be resurrected. I myself might even prefer this, since there should be some change that resurrection is impossible (if you have high level character it also means that money isn't any problem). Probably the best would made corpses so that they can't be destroyed, but can take so much damage that resurrection is impossible, they can still be buried. You could carry player's corpse to the graveyard, and get player buried with gravestone. This of course would require that when player normally die there wouldn't be any gravestone automatically. The idea of under- taker's shop could be much simpler. It's just normal shop in next to graveyard. There you could buy different gravestones and monuments (depent how much you want spend your money). Carrying this gravestone and corpse in the graveyard and dropping them the same free square (marked as grave in map) and applying gravestone would update the grave- stone and buries (or destroys) the corpse. These graveyards could be come 'The hall of fame' style maps. I'm also against of .dead files since they cause only problems. I would save all information in corpse, that is most 'natural' place where it belongs. If you loose corpse you loose also information, simple and efficient. Saving only corpses in different place could be nice solution and really gives the new feel the game. Probably not too hard implement, when be careful about the map changes. Maybe there should be lock files for players, so the new player can't start same name than any corpse? The banks/deposit boxes can be implemented (at least) two main way. The first is saved maps and the second is saved containers (or special squares). I myself prefer to save whole maps, but saved squares might not be that bad idea (mark every square in map as saveable so you save whole map!). The best solution is probably implement both, since it isn't too much extra code. And more about permanently saved maps. The biggest problem with banks isn't that when player dies, nobody won't get the stuff from there, but that a new 1st level character comes and empties it (i.e. takes all best armors and weapons from there). All deposit boxes should be very much available from only one character. Also I prefer normal game mechanism of getting stuff from deposit boxes (i.e. special keys, passwords, using normal maps, etc.). Passwords are available everyone and not very save solution, so the key is the best solutions which comes to mind. It's easy implement, just buy key from the bank/inn and carry it with you. The problems raises when someone destroys keys, since those rooms can not be used any longer. Solution is of course made keys impossible to destroy and save them like corpses. When someone comes corpse, (s)he can empty your goods and resurrect your body if possible. Another possibility would be doors locked by player's name so no one else can't get through it. Very safe, but it's any better? The key feels more realistic, IMHO. If player dies some strange map, her/his corpse and keys stays there until someone finds them. I don't think that's too big problem. And if the number of saveable items/maps isn't very big, then it's not any problem server going through all saved maps and looking old items (when server starts/ every X hour or so). Note that 'the old items' is very server specific thing, 24 hours server it's totally different than someone randomly starting game and playing a few hours. I have had the idea of inns so long that I might even coding those next weekend. so if you read above, I would like get your comments. Also if resurrect can be done like above I could fix it also, if PeterM isn't fixed it already. -Tero From crossfire-request Thu Mar 10 20:16:46 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 20:16:45 +0100 Received: from localhost (hevi@localhost) by cc.lut.fi (8.6.5/8.6.5/1.12.kim) id VAA00551; Thu, 10 Mar 1994 21:16:43 +0200 Date: Thu, 10 Mar 1994 21:16:43 +0300 (EETDST) From: Petri Heinil{ Subject: Re: weight To: crossfire@ifi.uio.no In-Reply-To: <9403092228.AA00323@daml.dme> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Thu, 10 Mar 1994, Damien Lunsford 61-89-895256 wrote: >... > How about do it how nethack does it? > There are follwing classes (If I remember right): * normal - no effect to anything * burdened - the weight is calculated after this class, effect on movent, fightning, but you can manage * stressed - you shound not fight in this mode against hard monster * strained - you are very much slower than any moster * overtaxed - you are on edge, if you fight in this mode you probabilly die * no carry But crossfire and nethack are diffrent style games. crossfire is a action game and nethack is a strategy game. So it should be careful importing features from nethack. ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Thu Mar 10 15:23:13 1994 Return-Path: Received: from mimir.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Thu, 10 Mar 1994 15:23:13 +0100 From: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= MIME-Version: 1.0 Received: from localhost by mimir.ifi.uio.no ; Thu, 10 Mar 1994 15:23:12 +0100 Date: Thu, 10 Mar 1994 15:23:11 +0100 To: Mark Wedel Cc: peterm@soda.berkeley.edu, crossfire@ifi.uio.no Subject: Re: 0.92 Bug? (and other) In-Reply-To: Mark Wedel 's message of Wed, 9 Mar 1994 20:10:32 -0800 References: <199403100410.AA29669@bolero.rahul.net> Message-ID: Status: RO > A few more thoughts: As I recall, you need the gravestone to bring >a character back to life. That means that after the map is reset, or >the gravestone is destroyed, that character is dead permantly. As such, >it might not be unreasonable for crossfire to delete all .dead files in >the player directory when it starts up. > It also does mean, that if a player dies, and the server starts back up >immediately (because it crashed), then that gravestone would no longer be >around. So you really could have permantly dead characters pretty easily. How about saving gravestones to the map when a player dies? I think it would be pretty cool to enter a place, and see 20 or so gravestones scattered around the room, a BIG door and a handle with the inscription "Don't.". This could of course be done by the creator of the map, but if you first talk to the person, and he says "I'm embarking on a quest to find the Lost Hammer of Souls, wanna come?" and then afterwards find his gravestone it makes the game a lot more fun. This would of course mean that one has to remove the apply-info-thingie on gravestones, and use the (logically correct) (E)xamine. To enable you to have the possibility of applying doors with the keyboard when there is a gravestone lying on top of them. > What would be interesting (but not what I want to code), is a graveyard >map, and each time a person dies, another gravestone is put on the map >(what might be easiest is to have a whole mess of gravestones which >are then blank, and then update the gravestone with the proper message). >Then, anytime someone dies, a gravestone is created in the graveyard, and >this file is saved back as a permant addition. Likewise, people could wander >in and see everyone that has died for quite a while. This could be cool, but who should put the gravestones there? If you die in the Secret Treasury of Shallambar the Great Vortex Dragon, I think the gravestone STAYS there until someone slays Shallambar and retrieves the gravestone. What I would suggest is an undertaker's shop, so that the people who find the gravestone may buy various monuments to honor their lost comrade. This would indeed add a lot of flavour to the game. You drop the stone on a special square in the shop, and drop money on the altar (goldfloor?) in front of the monument you wish to have on the grave. Then, the monument is placed on a special map linked to the church or whereever the townsfolk wish to have their graveyard. The map is then saved. Now THERE's a GRAVEYARD. Another idea: Skip the .dead-files. Put all the info required to resurrect the character in his gravestone when he dies. Then, if the gravestones are permanently saved to the map, one can pick them up at any time and take them back to town for resurrection(/proper burial). > First, flags in maps that tell it to save changes back permantly, and >not in /tmp, would need to be added. Would that be hard to implement? If you're only going to save the gravestone(s) and nothing else? >This flag would also be needed for >safety deposit boxes and banks. An easy solution to that would be to have >some unique key that allows the player to pass through the door, but doesn't >destroy it. thus, only he can get to his stuff (and if he dies, whoever >finds that key and the matching door.) How about magic ears, so that the person can have a password-protected deposit box? The map contains the counter, a clerk and 4 'rooms' for picking up items. You say the password, and the door you chose to stand in front of opens. Inside, there is a small button on the floor, and another door. When you step on the button, the door behind you closes, and the one in front of you opens. Inside, there is a teleporter. This teleporter teleports you to the map/box associated with the password at the first door. In the 'box' (say a room 4x4) there is a teleporter back to the bank. > One problem with banks and deposit boxes I have, is that characters could >die an no one claim the stuff. Maps could become filled with junk as >this happens. I thought I posted on this... Items not retrieved within one week of the players death are put out for sale. (and the box-map deleted) - Regards, Bjorn. From crossfire-request Thu Mar 10 12:55:17 1994 Return-Path: Received: from flipper.pvv.unit.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 12:55:15 +0100 Received: from nova.pvv.unit.no (nova.pvv.unit.no [129.241.36.207]) by flipper.pvv.unit.no (8.6.5/8.6.5) with SMTP id MAA23101; Thu, 10 Mar 1994 12:55:00 +0100 From: Kjetil Wiekhorst J|rgensen Received: by nova.pvv.unit.no ; Thu, 10 Mar 94 12:54:58 +0100 Date: Thu, 10 Mar 94 12:54:58 +0100 Message-Id: <9403101154.AA15233@nova.pvv.unit.no> To: crossfire@ifi.uio.no Subject: Patches for solaris. Cc: jorgens@pvv.unit.no Status: RO I think these fixes is needed in order to make crossfire work better on solaris systems. The SOLARIS2_1 define is not needed since X should be bootstraped with SVR4, and the compiler defined __sun__. I have also added quite a few missing header files. Another thing is that you should never, never, never use the ucb library that sun delivers with SunOS 5.* Another change I'd like to see is that my name is spelled right. My lastname is spelled with an ISO-8859/1 oslash and not an 'o'. Kjetil diff -cr crossfire-0.90.2.orig/client/Imakefile crossfire-0.90.2/client/Imakefile *** crossfire-0.90.2.orig/client/Imakefile Mon Mar 7 07:57:46 1994 --- crossfire-0.90.2/client/Imakefile Tue Mar 8 17:23:40 1994 *************** *** 32,39 **** #endif /* LOCAL_LDFLAGS = -L../common /* SGI doesn't understand this... */ - /* if SOLARIS2_1: -lsocket */ - /* LOCAL_LIBRARIES = -L../common -lcross -lX11 -lsocket */ LOCAL_LIBRARIES = -L../common -lcross $(XPM_LIB) $(XLIB) #ifdef OSFArchitecture --- 32,37 ---- diff -cr crossfire-0.90.2.orig/client/client.c crossfire-0.90.2/client/client.c *** crossfire-0.90.2.orig/client/client.c Mon Mar 7 07:57:46 1994 --- crossfire-0.90.2/client/client.c Wed Mar 9 14:42:14 1994 *************** *** 31,36 **** --- 31,37 ---- #include #include #include + #include #include #include #include *************** *** 234,244 **** fprintf(stderr,"Unknown host: %s\n",hostname); return 1; } - #ifdef SOLARIS2_1 memcpy(&insock.sin_addr, hostbn->h_addr, hostbn->h_length); - #else - bcopy(hostbn->h_addr, &insock.sin_addr, hostbn->h_length); - #endif sprintf(buf,"xhost +%s",hostbn->h_name); } if (optcmd == (char *) NULL) --- 235,241 ---- diff -cr crossfire-0.90.2.orig/common/living.c crossfire-0.90.2/common/living.c *** crossfire-0.90.2.orig/common/living.c Mon Mar 7 07:57:23 1994 --- crossfire-0.90.2/common/living.c Wed Mar 9 13:43:48 1994 *************** *** 25,30 **** --- 25,31 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ + #include #include #include #include diff -cr crossfire-0.90.2.orig/common/loader.c crossfire-0.90.2/common/loader.c *** crossfire-0.90.2.orig/common/loader.c Mon Mar 7 07:57:23 1994 --- crossfire-0.90.2/common/loader.c Wed Mar 9 13:44:03 1994 *************** *** 29,34 **** --- 29,35 ---- sub/add_weight will transcend the environment updating the carrying variable. */ + #include #include #include #include diff -cr crossfire-0.90.2.orig/common/logger.c crossfire-0.90.2/common/logger.c *** crossfire-0.90.2.orig/common/logger.c Mon Mar 7 07:57:23 1994 --- crossfire-0.90.2/common/logger.c Wed Mar 9 13:44:56 1994 *************** *** 27,32 **** --- 27,33 ---- #ifndef NO_LOG + #include #include #include #include diff -cr crossfire-0.90.2.orig/common/map.c crossfire-0.90.2/common/map.c *** crossfire-0.90.2.orig/common/map.c Mon Mar 7 07:57:23 1994 --- crossfire-0.90.2/common/map.c Wed Mar 9 13:48:19 1994 *************** *** 25,35 **** The author can be reached via e-mail to frankj@ifi.uio.no. */ #include #include #ifdef NeXT ! extern char *tempnam(char *dir, char *pfx); #endif extern int nrofallocobjects,nroffreeobjects; --- 25,38 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ + #include + #include + #include #include #include #ifdef NeXT ! char *tempnam(char *, char *); #endif extern int nrofallocobjects,nroffreeobjects; diff -cr crossfire-0.90.2.orig/common/object.c crossfire-0.90.2/common/object.c *** crossfire-0.90.2.orig/common/object.c Mon Mar 7 07:57:23 1994 --- crossfire-0.90.2/common/object.c Wed Mar 9 13:48:51 1994 *************** *** 31,36 **** --- 31,37 ---- #include #include + #include #include #include #include diff -cr crossfire-0.90.2.orig/common/time.c crossfire-0.90.2/common/time.c *** crossfire-0.90.2.orig/common/time.c Mon Mar 7 07:57:24 1994 --- crossfire-0.90.2/common/time.c Wed Mar 9 14:48:54 1994 *************** *** 31,36 **** --- 31,40 ---- #include #include + #if defined(SVR4) && defined(__sun__) + int gettimeofday(struct timeval *); + #endif + /* * Gloabal variables: */ *************** *** 65,71 **** --- 69,79 ---- process_tot_mtime = 0; pticks = 0; #endif + #if defined(SVR4) && defined(__sun__) + (void) gettimeofday(&last_time); + #else (void) gettimeofday(&last_time, (struct timezone *) NULL); + #endif } void *************** *** 95,101 **** --- 103,113 ---- static struct timeval new_time; long elapsed_utime; + #if defined(SVR4) && defined(__sun__) + (void) gettimeofday(&new_time); + #else (void) gettimeofday(&new_time, (struct timezone *) NULL); + #endif elapsed_utime = (new_time.tv_sec - last_time.tv_sec) * 1000000 + new_time.tv_usec - last_time.tv_usec; if (elapsed_utime > max_time) { *************** *** 120,126 **** --- 132,142 ---- static struct timeval new_time; long sleep_sec, sleep_usec; + #if defined(SVR4) && defined(__sun__) + (void) gettimeofday(&new_time); + #else (void) gettimeofday(&new_time, (struct timezone *) NULL); + #endif sleep_sec = last_time.tv_sec - new_time.tv_sec; sleep_usec = max_time - (new_time.tv_usec - last_time.tv_usec); *************** *** 221,226 **** --- 237,246 ---- { struct timeval now; + #if defined(SVR4) && defined(__sun__) + (void) gettimeofday(&now); + #else (void) gettimeofday(&now, (struct timezone *) 0); + #endif return now.tv_sec; } diff -cr crossfire-0.90.2.orig/common/treasure.c crossfire-0.90.2/common/treasure.c *** crossfire-0.90.2.orig/common/treasure.c Mon Mar 7 07:57:24 1994 --- crossfire-0.90.2/common/treasure.c Wed Mar 9 13:51:24 1994 *************** *** 27,32 **** --- 27,33 ---- #define ALLOWED_COMBINATION + #include #include #include #include diff -cr crossfire-0.90.2.orig/config/crossfire.cf crossfire-0.90.2/config/crossfire.cf *** crossfire-0.90.2.orig/config/crossfire.cf Mon Mar 7 07:58:14 1994 --- crossfire-0.90.2/config/crossfire.cf Wed Mar 9 15:25:28 1994 *************** *** 92,98 **** * On anything except sun and hp, the lines should ideally stay commented out. */ #ifndef ForceCC ! #ifdef SunArchitecture #ifdef SunHasAcc CC = acc CCOPTIONS = -Xc --- 92,98 ---- * On anything except sun and hp, the lines should ideally stay commented out. */ #ifndef ForceCC ! #if defined(SunArchitecture) && !(OSMajorVersion == 5) #ifdef SunHasAcc CC = acc CCOPTIONS = -Xc diff -cr crossfire-0.90.2.orig/config/crosssite.def crossfire-0.90.2/config/crosssite.def *** crossfire-0.90.2.orig/config/crosssite.def Mon Mar 7 07:58:14 1994 --- crossfire-0.90.2/config/crosssite.def Wed Mar 9 15:25:15 1994 *************** *** 111,119 **** --- 111,121 ---- * define/undef above is set correctly, so that the user does not * need to set these manually. */ + #if defined(SunArchitecture) && !(OSMajorVersion == 5) #ifndef SunHasAcc #define StupidSunHeaders #endif + #endif /* Only Suns with acc seem to have problems with longjump */ #ifdef SunHasAcc diff -cr crossfire-0.90.2.orig/include/sproto.h crossfire-0.90.2/include/sproto.h *** crossfire-0.90.2.orig/include/sproto.h Mon Mar 7 07:58:12 1994 --- crossfire-0.90.2/include/sproto.h Tue Mar 8 17:54:24 1994 *************** *** 185,190 **** --- 185,191 ---- extern int command_rotateinventory ( object *op, char *params ); extern int command_invisible ( object *op, char *params ); extern int command_rotateshoottype ( object *op, char *params ); + int command_search ( object *, char *); extern int command_show ( object *op, char *params ); extern int command_throw ( object *op, char *params ); extern int command_brace ( object *op, char *params ); diff -cr crossfire-0.90.2.orig/include/sunos.h crossfire-0.90.2/include/sunos.h *** crossfire-0.90.2.orig/include/sunos.h Mon Mar 7 07:58:12 1994 --- crossfire-0.90.2/include/sunos.h Tue Mar 8 17:12:01 1994 *************** *** 1,3 **** --- 1,4 ---- + #ifndef SVR4 /* * static char *rcsid_sunos_h = * "$Id: sunos.h,v 1.10 1994/02/12 05:17:37 master Exp $"; *************** *** 105,111 **** int ioctl(); int setpgrp(); - #ifndef SOLARIS2_1 int printf(); int fprintf(); int fscanf(); --- 106,111 ---- diff -cr crossfire-0.90.2.orig/server/Imakefile crossfire-0.90.2/server/Imakefile *** crossfire-0.90.2.orig/server/Imakefile Mon Mar 7 07:57:40 1994 --- crossfire-0.90.2/server/Imakefile Wed Mar 9 15:07:17 1994 *************** *** 42,53 **** XPM_LIBS = -L$(XPM_LIBDIR) -lXpm #endif ! #ifdef SOLARIS2_1 ! SOLARIS_LIBS = -lnsl -lsocket -lc -lucb -lelf ! #endif ! ! LOCAL_LIBRARIES = $(SOUND_LIBS) $(MALLOC_LIBS) $(XPM_LIBS) -L../common \ ! -lcross $(XLIB) $(SOLARIS_LIBS) /* I guess the make on OSF systems can handle constructs where the * variable is being set to itself? Gnu make and sun make can't seem --- 42,49 ---- XPM_LIBS = -L$(XPM_LIBDIR) -lXpm #endif ! LOCAL_LIBRARIES = $(SOUND_LIBS) $(MALLOC_LIBS) -L../common -lcross \ ! $(XPM_LIBS) $(XLIB) /* I guess the make on OSF systems can handle constructs where the * variable is being set to itself? Gnu make and sun make can't seem diff -cr crossfire-0.90.2.orig/server/apply.c crossfire-0.90.2/server/apply.c *** crossfire-0.90.2.orig/server/apply.c Mon Mar 7 07:57:40 1994 --- crossfire-0.90.2/server/apply.c Wed Mar 9 13:52:58 1994 *************** *** 25,30 **** --- 25,34 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ + #include + #include + #include + #include #include #include #include diff -cr crossfire-0.90.2.orig/server/attack.c crossfire-0.90.2/server/attack.c *** crossfire-0.90.2.orig/server/attack.c Mon Mar 7 07:57:40 1994 --- crossfire-0.90.2/server/attack.c Wed Mar 9 13:53:29 1994 *************** *** 23,28 **** --- 23,29 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ + #include #include #include #include diff -cr crossfire-0.90.2.orig/server/c_object.c crossfire-0.90.2/server/c_object.c *** crossfire-0.90.2.orig/server/c_object.c Mon Mar 7 07:57:40 1994 --- crossfire-0.90.2/server/c_object.c Wed Mar 9 14:39:06 1994 *************** *** 3,8 **** --- 3,9 ---- * ++Jam & Anipa */ + #include #include #include #include diff -cr crossfire-0.90.2.orig/server/daemon.c crossfire-0.90.2/server/daemon.c *** crossfire-0.90.2.orig/server/daemon.c Mon Mar 7 07:57:41 1994 --- crossfire-0.90.2/server/daemon.c Wed Mar 9 15:16:51 1994 *************** *** 29,34 **** --- 29,36 ---- */ + #include + #include #include #include #ifdef hpux *************** *** 88,94 **** (void) ioctl (i, TIOCTTY, &zero); #else #ifndef TIOCNOTTY /********* !!!!!!!!! **********/ ! #ifdef SOLARIS2_1 #include #else #include --- 90,96 ---- (void) ioctl (i, TIOCTTY, &zero); #else #ifndef TIOCNOTTY /********* !!!!!!!!! **********/ ! #if defined(SVR4) && defined(__sun__) #include #else #include *************** *** 104,110 **** --- 106,116 ---- #if defined(hpux) || defined(sgi) /* Added sgi. -Frank */ setsid(); #else + #if defined(SVR4) && defined(__sun__) + setpgrp(); + #else setpgrp (0, 0); + #endif /* !SVR4 && !__sun__ */ #endif #else setpgrp (0, getpid()); diff -cr crossfire-0.90.2.orig/server/encounter.c crossfire-0.90.2/server/encounter.c *** crossfire-0.90.2.orig/server/encounter.c Mon Mar 7 07:57:41 1994 --- crossfire-0.90.2/server/encounter.c Wed Mar 9 13:56:18 1994 *************** *** 24,29 **** --- 24,30 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ + #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/init.c crossfire-0.90.2/server/init.c *** crossfire-0.90.2.orig/server/init.c Mon Mar 7 07:57:41 1994 --- crossfire-0.90.2/server/init.c Wed Mar 9 13:57:12 1994 *************** *** 25,31 **** The author can be reached via e-mail to master@rahul.net */ ! #include #include #include --- 25,32 ---- The author can be reached via e-mail to master@rahul.net */ ! #include ! #include #include #include #include diff -cr crossfire-0.90.2.orig/server/input.c crossfire-0.90.2/server/input.c *** crossfire-0.90.2.orig/server/input.c Mon Mar 7 07:57:41 1994 --- crossfire-0.90.2/server/input.c Wed Mar 9 13:57:37 1994 *************** *** 25,30 **** --- 25,31 ---- The author can be reached via e-mail to master@rahul.net */ + #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/invoke.c crossfire-0.90.2/server/invoke.c *** crossfire-0.90.2.orig/server/invoke.c Mon Mar 7 07:57:41 1994 --- crossfire-0.90.2/server/invoke.c Wed Mar 9 13:57:59 1994 *************** *** 25,31 **** The author can be reached via e-mail to master@rahul.net */ ! #include #include #ifndef __CEXTRACT__ --- 25,31 ---- The author can be reached via e-mail to master@rahul.net */ ! #include #include #include #ifndef __CEXTRACT__ diff -cr crossfire-0.90.2.orig/server/login.c crossfire-0.90.2/server/login.c *** crossfire-0.90.2.orig/server/login.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/login.c Wed Mar 9 13:59:18 1994 *************** *** 25,30 **** --- 25,33 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ + #include + #include + #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/main.c crossfire-0.90.2/server/main.c *** crossfire-0.90.2.orig/server/main.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/main.c Wed Mar 9 15:23:35 1994 *************** *** 26,31 **** --- 26,35 ---- The author can be reached via e-mail to master@rahul.net */ + #include + #if ((defined(__sun__) || defined(__sgi)) && defined(SVR4)) || defined(__osf__) + #include + #endif #include #include #ifndef __CEXTRACT__ *************** *** 133,142 **** else s[0]= salt[0], s[1]= salt[1]; ! #ifdef __sun__ ! return _crypt(str,s); ! #else ! return ((char *) crypt(str,s)); ! #endif } --- 137,147 ---- else s[0]= salt[0], s[1]= salt[1]; ! return crypt(str,s); } diff -cr crossfire-0.90.2.orig/server/monster.c crossfire-0.90.2/server/monster.c *** crossfire-0.90.2.orig/server/monster.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/monster.c Wed Mar 9 14:00:19 1994 *************** *** 24,30 **** The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #ifndef __CEXTRACT__ #include --- 24,30 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/move.c crossfire-0.90.2/server/move.c *** crossfire-0.90.2.orig/server/move.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/move.c Wed Mar 9 14:00:36 1994 *************** *** 24,30 **** The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #ifndef __CEXTRACT__ #include --- 24,30 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/newspells.c crossfire-0.90.2/server/newspells.c *** crossfire-0.90.2.orig/server/newspells.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/newspells.c Wed Mar 9 14:00:53 1994 *************** *** 25,31 **** The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #include #ifndef __CEXTRACT__ --- 25,31 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #include #include #ifndef __CEXTRACT__ diff -cr crossfire-0.90.2.orig/server/pets.c crossfire-0.90.2/server/pets.c *** crossfire-0.90.2.orig/server/pets.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/pets.c Wed Mar 9 14:01:09 1994 *************** *** 24,30 **** The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #ifndef __CEXTRACT__ #include --- 24,30 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/player.c crossfire-0.90.2/server/player.c *** crossfire-0.90.2.orig/server/player.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/player.c Wed Mar 9 14:41:27 1994 *************** *** 24,30 **** The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include #include #include --- 24,32 ---- The author can be reached via e-mail to frankj@ifi.uio.no. */ ! #include ! #include ! #include #include #include #include *************** *** 1738,1745 **** object *tmp; int last_food=op->stats.food; int gen_hp, gen_sp; ! int x,y; /* these are for resurrection */ ! mapstruct *map; /* this is for resurrection */ if(!op->contr->state) { gen_hp=(op->contr->gen_hp+1)*op->stats.maxhp; --- 1751,1758 ---- object *tmp; int last_food=op->stats.food; int gen_hp, gen_sp; ! int x = 0, y = 0; /* these are for resurrection */ ! mapstruct *map = NULL; /* this is for resurrection */ if(!op->contr->state) { gen_hp=(op->contr->gen_hp+1)*op->stats.maxhp; *************** *** 1980,1999 **** if(!QUERY_FLAG(op,FLAG_WAS_WIZ)&&op->stats.exp) { delete_character(op->name); #ifndef NOT_PERMADEATH ! int tempx, tempy; ! /* save playerfile sans equipment when player dies ! ** then save it as player.pl.dead so that future resurrection ! ** type spells will work on them nicely ! */ ! op->stats.hp = op->stats.maxhp; ! op->stats.food = 999; ! if(op->map!=NULL) ! strcpy(op->map->path, EMERGENCY_MAPPATH); ! op->x = EMERGENCY_X; ! op->y = EMERGENCY_Y; ! save_player(op,0); ! /* please see resurrection.c: peterm */ ! dead_player(op); #endif } remove_lock(op->contr); --- 1993,2011 ---- if(!QUERY_FLAG(op,FLAG_WAS_WIZ)&&op->stats.exp) { delete_character(op->name); #ifndef NOT_PERMADEATH ! /* save playerfile sans equipment when player dies ! ** then save it as player.pl.dead so that future resurrection ! ** type spells will work on them nicely ! */ ! op->stats.hp = op->stats.maxhp; ! op->stats.food = 999; ! if(op->map!=NULL) ! strcpy(op->map->path, EMERGENCY_MAPPATH); ! op->x = EMERGENCY_X; ! op->y = EMERGENCY_Y; ! save_player(op,0); ! /* please see resurrection.c: peterm */ ! dead_player(op); #endif } remove_lock(op->contr); diff -cr crossfire-0.90.2.orig/server/resurrection.c crossfire-0.90.2/server/resurrection.c *** crossfire-0.90.2.orig/server/resurrection.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/resurrection.c Wed Mar 9 14:02:29 1994 *************** *** 27,32 **** --- 27,34 ---- /* the contents of this file were create solely by peterm@soda.berkeley.edu all of the above disclaimers apply. */ + #include + #include #include #include #ifndef __CEXTRACT__ diff -cr crossfire-0.90.2.orig/server/rune.c crossfire-0.90.2/server/rune.c *** crossfire-0.90.2.orig/server/rune.c Mon Mar 7 07:57:42 1994 --- crossfire-0.90.2/server/rune.c Wed Mar 9 14:03:30 1994 *************** *** 26,31 **** --- 26,32 ---- The author can be reached via e-mail to master@rahul.net */ + #include #include #include #ifndef __CEXTRACT__ diff -cr crossfire-0.90.2.orig/server/socket.c crossfire-0.90.2/server/socket.c *** crossfire-0.90.2.orig/server/socket.c Mon Mar 7 07:57:43 1994 --- crossfire-0.90.2/server/socket.c Wed Mar 9 14:04:20 1994 *************** *** 30,36 **** * I moved them to a separate file, since main() got too clobbered. -Frank. */ ! #include #ifndef __CEXTRACT__ #include --- 30,37 ---- * I moved them to a separate file, since main() got too clobbered. -Frank. */ ! #include ! #include #include #ifndef __CEXTRACT__ #include *************** *** 66,72 **** if(server_mode == SERVER_ENABLED || debug) LOG(llevError,"Opening add user socket on %d\n",PORT); ! #if defined(hpux) || defined (SOLARIS2_1) max_filedescriptors = sysconf(_SC_OPEN_MAX); #else max_filedescriptors = getdtablesize(); --- 67,73 ---- if(server_mode == SERVER_ENABLED || debug) LOG(llevError,"Opening add user socket on %d\n",PORT); ! #if defined(hpux) || defined (SVR4) || defined(_POSIX_SOURCE) max_filedescriptors = sysconf(_SC_OPEN_MAX); #else max_filedescriptors = getdtablesize(); *************** *** 105,111 **** perror("error on setsockopt LINGER (NULL version)"); #endif ! #if defined(__osf__) || defined(hpux) || defined(sgi) || defined(NeXT) { const char tmp =1; --- 106,112 ---- perror("error on setsockopt LINGER (NULL version)"); #endif ! #if defined(__osf__) || defined(hpux) || defined(sgi) || defined(NeXT) || defined(SVR4) { const char tmp =1; diff -cr crossfire-0.90.2.orig/server/spells.c crossfire-0.90.2/server/spells.c *** crossfire-0.90.2.orig/server/spells.c Mon Mar 7 07:57:43 1994 --- crossfire-0.90.2/server/spells.c Wed Mar 9 14:04:42 1994 *************** *** 26,31 **** --- 26,32 ---- The author can be reached via e-mail to master@rahul.net */ + #include #include #include #include diff -cr crossfire-0.90.2.orig/server/swamp.c crossfire-0.90.2/server/swamp.c *** crossfire-0.90.2.orig/server/swamp.c Mon Mar 7 07:57:43 1994 --- crossfire-0.90.2/server/swamp.c Wed Mar 9 14:04:58 1994 *************** *** 3,8 **** --- 3,9 ---- * "$Id: swamp.c,v 1.5 1994/03/02 05:22:03 master Exp $"; */ + #include #include #ifndef __CEXTRACT__ #include diff -cr crossfire-0.90.2.orig/server/time.c crossfire-0.90.2/server/time.c *** crossfire-0.90.2.orig/server/time.c Mon Mar 7 07:57:43 1994 --- crossfire-0.90.2/server/time.c Wed Mar 9 14:05:25 1994 *************** *** 30,35 **** --- 30,36 ---- * collected in this file. */ + #include #include #include #ifndef __CEXTRACT__ diff -cr crossfire-0.90.2.orig/server/xio.c crossfire-0.90.2/server/xio.c *** crossfire-0.90.2.orig/server/xio.c Mon Mar 7 07:57:43 1994 --- crossfire-0.90.2/server/xio.c Wed Mar 9 13:42:17 1994 *************** *** 28,33 **** --- 28,35 ---- #ifdef ds #include #endif + #include + #include #include #include #include From crossfire-request Wed Mar 9 23:32:18 1994 Return-Path: Received: from munnari.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 9 Mar 1994 23:31:14 +0100 Received: from AARNet.ncom.nt.gov.au by munnari.oz.au with SMTP (5.83--+1.3.1+0.50) id AA26949; Thu, 10 Mar 1994 08:28:50 +1000 (from daml@golem.dme.nt.gov.au) Received: from dme.nt.gov.au (adit.dme.nt.gov.au) by aarnet.ncom.nt.gov.au (PMDF V4.2-12 #4927) id <01H9SSSWM6AO000ZFC@aarnet.ncom.nt.gov.au>; Thu, 10 Mar 1994 07:55:09 CST Received: from golem.dme.nt.gov.au by dme.nt.gov.au (4.1/SMI-4.1) id AA03706; Thu, 10 Mar 94 07:56:57 CST Received: from daml.dme by golem.dme.nt.gov.au (4.1/SMI-4.1) id AA04301; Thu, 10 Mar 94 07:56:33 CST Received: by daml.dme (5.0/SMI-SVR4) id AA00323; Thu, 10 Mar 1994 07:58:08 --9-30 Date: Thu, 10 Mar 1994 07:58:08 --9-30 From: daml@golem.dme.nt.gov.au (Damien Lunsford 61-89-895256) Subject: weight To: crossfire@ifi.uio.no Message-Id: <9403092228.AA00323@daml.dme> Content-Transfer-Encoding: 7BIT X-Sun-Charset: US-ASCII Content-Length: 640 Status: RO > > On Wed, 9 Mar 1994, Benjamin Thomas Ketteridge wrote: > > > In the end, do we want crossfire characters to be restricted to 'farties', or > > do we want a game where we can pretend to be heroes? > > If you goto smash a big dragon you have to be some kind of a hero. > But I think, to carry 1000kg's is more to be a horse than a hero :) > > ///////////////////////// Petri Heinila ///////////////////////// > email: Petri.Heinila@lut.fi > www: Homepage > mail: Ainonkatu 2A > 53100 Lappeenranta > Finland, Europe > tel: (953) 574 3624 > How about do it how nethack does it? From crossfire-request Thu Mar 10 07:32:17 1994 Return-Path: Received: from chalmers.se by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 07:32:17 +0100 Received: from quarl0.etek.chalmers.se by chalmers.se (5.60+IDA/3.14+gl) id AA07512; Thu, 10 Mar 94 07:32:15 +0100 From: Torbj|rn Lindgren Message-Id: <9403100632.AA04119@quarl0.etek.chalmers.se> Received: from kajsa0 by quarl0.etek.chalmers.se (6.14 (VSB)/3.14+gl) id AA04119; Thu, 10 Mar 94 07:32:14 +0100 Received: by kajsa0 (6.14 (VSB)/3.14+gl) id AA02171; Thu, 10 Mar 94 07:32:13 +0100 Subject: Small fix for Imakefile in doc/spoiler (0.90.2) To: crossfire@ifi.uio.no Date: Thu, 10 Mar 94 7:32:09 GMT-1:00 X-Mailer: ELM [version 2.3 PL8] Status: RO There is a small error in the Imakefile in doc/spoiler that surfaces under Ultrix 4.3. The problem is that one entry is prefaced with 8 spaces instead of a tab (which all other entries use). *** Imakefile.orig Mon Mar 7 07:57:31 1994 --- Imakefile Tue Mar 8 16:41:10 1994 *************** *** 138,148 **** arche.tex: items arche-extract egrep -e "^915 " items | $(AWK) -F'&' -f arche-extract | sort > arche.tex weapmag.tex: items weap-extract ! egrep -e "^15 " items | $(AWK) -F'&' -f weap-extract | sort > weapmag.tex mag.tex: items mag-extract $(AWK) -F'&' -f mag-extract items | sort +0.9 -0.10 > mag.tex install:: --- 138,148 ---- arche.tex: items arche-extract egrep -e "^915 " items | $(AWK) -F'&' -f arche-extract | sort > arche.tex weapmag.tex: items weap-extract ! egrep -e "^15 " items | $(AWK) -F'&' -f weap-extract | sort > weapmag.tex mag.tex: items mag-extract $(AWK) -F'&' -f mag-extract items | sort +0.9 -0.10 > mag.tex install:: From crossfire-request Thu Mar 10 05:10:41 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 10 Mar 1994 05:10:36 +0100 Received: by bolero.rahul.net id AA29669 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Wed, 9 Mar 1994 20:10:32 -0800 Date: Wed, 9 Mar 1994 20:10:32 -0800 From: Mark Wedel Message-Id: <199403100410.AA29669@bolero.rahul.net> To: peterm@soda.berkeley.edu Subject: Re: 0.92 Bug? (and other) Cc: crossfire@ifi.uio.no Status: RO Well, there was a whole mess of spells missing in the spell.c file (or rather, a whole mess missing from the switch statement.) I've merged the new player.c file changes in. I play with NOT_PERMADEATH, mostly because I play by myself (most of the servers, along with the 14.4 term link, mean playing on other servers is too slow. I am thinking of setting one up on a2i when they get the T-1.) Obviously, some mechanism for getting read of '.dead' files in the player directory should be put in. And as far as I know, if someone starts a new character with the same name as a dead one, that dead one could not be brought to life. So a vindictive person could kill someone, and then start a new character with that dead characters name, preventing that character from being brought back. A few more thoughts: As I recall, you need the gravestone to bring a character back to life. That means that after the map is reset, or the gravestone is destroyed, that character is dead permantly. As such, it might not be unreasonable for crossfire to delete all .dead files in the player directory when it starts up. It also does mean, that if a player dies, and the server starts back up immediately (because it crashed), then that gravestone would no longer be around. So you really could have permantly dead characters pretty easily. What would be interesting (but not what I want to code), is a graveyard map, and each time a person dies, another gravestone is put on the map (what might be easiest is to have a whole mess of gravestones which are then blank, and then update the gravestone with the proper message). Then, anytime someone dies, a gravestone is created in the graveyard, and this file is saved back as a permant addition. Likewise, people could wander in and see everyone that has died for quite a while. First, flags in maps that tell it to save changes back permantly, and not in /tmp, would need to be added. This flag would also be needed for safety deposit boxes and banks. An easy solution to that would be to have some unique key that allows the player to pass through the door, but doesn't destroy it. thus, only he can get to his stuff (and if he dies, whoever finds that key and the matching door.) One problem with banks and deposit boxes I have, is that characters could die an no one claim the stuff. Maps could become filled with junk as this happens. --Mark From crossfire-request Mon Mar 21 03:41:28 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 03:41:23 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id SAA16554; Sun, 20 Mar 1994 18:40:51 -0800 From: Philip Brown Message-Id: <199403210240.SAA16554@soda.berkeley.edu> Subject: Re: fighters & magic To: halifax@ksu.ksu.edu (Scott Allan Wedekind) Date: Sun, 20 Mar 1994 18:40:50 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: <199403210141.TAA26255@nbc.ksu.ksu.edu> from "Scott Allan Wedekind" at Mar 20, 94 07:41:33 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 545 Status: RO >>>>[From Scott Allan Wedekind] On the contrary, I foresee fighter classes starting with half strength spells. A max level fighter should only be able to have his/her spells work at the same effectiveness as a wizard/mage at half his level. Why should fighters _start_ with spell ability? spellcasting is a delicate and tricky art, requiring high intelligence and finesse. it's bad enough trying to cast spells after having been taught them. WITHOUT having been thought them.. whatdo you think the result should be?!@!! From crossfire-request Mon Mar 21 03:31:50 1994 Return-Path: Received: from phantasm.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 03:31:47 +0100 Received: (from tvangod@localhost) by phantasm.ecst.csuchico.edu (8.6.8/8.6.6) id SAA01446 for crossfire@ifi.uio.no; Sun, 20 Mar 1994 18:31:37 -0800 From: Tyler Van Gorder Message-Id: <199403210231.SAA01446@phantasm.ecst.csuchico.edu> Subject: Chico server back up To: crossfire@ifi.uio.no Date: Sun, 20 Mar 1994 18:31:37 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 138 Status: RO Well, I finally had enough time to put the chico server back online...running crossfire-0.90.3 site: corpse.ecst.csuchico.edu :> Tyler From crossfire-request Mon Mar 21 03:05:17 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Mon, 21 Mar 1994 03:05:17 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Mon, 21 Mar 1994 03:05:15 +0100 Date: Mon, 21 Mar 1994 03:05:15 +0100 Message-Id: <19940321020515.24687.bera.ifi.uio.no@ifi.uio.no> To: halifax@ksu.ksu.edu CC: crossfire@ifi.uio.no In-reply-to: Scott Allan Wedekind's message of Sun, 20 Mar 1994 19:41:33 -0600 (CST) <199403210141.TAA26255@nbc.ksu.ksu.edu> Subject: Re: fighters & magic Status: RO +--- Scott Wedekind: | On the contrary, I foresee fighter classes starting with half | strength spells. But still - you make the effectiveness of spells dependent on level, and not wisdom/intelligence. Also, you want to introduce code which treats the classes differently. We want to avoid that, don't we? An unrelated suggestion - limit the pluses magical items can give you to an additional +5. That way a barbarian can't get better stats than Str 29, Dex 26, Con 28, Int 19, Wis 24, Cha 23, and a mage Str 25, Dex 26, Con 24, Int 27, Wis 26, Cha 22. See, those classes are still pretty similar... This will actually help barbarians, since mages tend to stack up on +Int items. (two Int +2 rings, Helmet of Brilliance (+2), some sword (can have +3!) == +9). Even if you don't find cool combination rings (Str +2 magic +1, anyone? :-), you can still wear shields, girdles, bracers and boots with special effects. Kjetil T. From crossfire-request Mon Mar 21 02:41:47 1994 Return-Path: Received: from grunt.ksu.ksu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 02:41:43 +0100 Received: from nbc.ksu.ksu.edu by grunt.ksu.ksu.edu (8.6.4/1.34) id TAA14890; Sun, 20 Mar 1994 19:41:34 -0600 From: halifax@ksu.ksu.edu (Scott Allan Wedekind) Received: by nbc.ksu.ksu.edu (8.6.8/1.34) id TAA26255; Sun, 20 Mar 1994 19:41:33 -0600 Message-Id: <199403210141.TAA26255@nbc.ksu.ksu.edu> Subject: fighters & magic To: crossfire@ifi.uio.no (crossfire) Date: Sun, 20 Mar 1994 19:41:33 -0600 (CST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 900 Status: RO > >Forwarded message: >> From: Kjetil Torgrim Homme >> >> You suggestions would mostly help _fighters_, and IMO, >> fighters are too good magicians already (and vice versa!) >> >> Kjetil T. >> On the contrary, I foresee fighter classes starting with half strength spells. A max level fighter should only be able to have his/her spells work at the same effectiveness as a wizard/mage at half his level. -- The people of Halifax invented the trampoline. During the Victorian period the tripe-dressers of Halifax stretched tripe across a large wooden frame and jumped up and down on it to `tender and dress' it. The tripoline, as they called it, degenerated into becoming the apparatus for a spectator sport. The people of Halifax also invented the harmonium, a device for castrating pigs during Sunday service. Scott Wedekind (halifax@ksu.ksu.edu) From crossfire-request Mon Mar 21 02:15:13 1994 Return-Path: Received: from phantasm.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 02:15:08 +0100 Received: (from dtabb@localhost) by phantasm.ecst.csuchico.edu (8.6.8/8.6.6) id RAA27927 for crossfire@ifi.uio.no; Sun, 20 Mar 1994 17:15:02 -0800 From: Don Tabb Message-Id: <199403210115.RAA27927@phantasm.ecst.csuchico.edu> Subject: fighters & magic To: crossfire@ifi.uio.no Date: Sun, 20 Mar 1994 17:15:01 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 968 Status: RO Forwarded message: > From: Kjetil Torgrim Homme > > You suggestions would mostly help _fighters_, and IMO, > fighters are too good magicians already (and vice versa!) > > Kjetil T. > I agree. fighers should not be able to use wands and staffs and mages should not use swords. That is the whole joy of character classes. You make a high level tank/fighter, but you need a mage and a healer to help him. a thief class would be cool.. stealing stuff from classes (like money or bags) ways to save items and ways for others to steal them. on other notes, I like what I see being done on graveyards, and stats will always need improvement. on maps: what still needs to be done? what do we need? more low level maps, or high level maps (10-20) or demi-god level maps? I will start working on more maps, so should I finish castle scorn, or the tabbland quest? and how hard should I make them. Don aka Scorn! <- netrek kicks ass From crossfire-request Sun Mar 20 20:33:41 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sun, 20 Mar 1994 20:33:41 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Sun, 20 Mar 1994 20:33:38 +0100 Date: Sun, 20 Mar 1994 20:33:38 +0100 Message-Id: <19940320193338.24262.bera.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: Peter Mardahl's message of Sat, 19 Mar 1994 14:12:21 -0800 <199403192212.OAA22753@soda.berkeley.edu> Subject: Re: More maps Status: RO [ sorry about the unsubscribe mail which got here just now ] +--- Peter Mardahl: | I think you should be able to have several magical effects in place | at once. Why should it be impossible to have a dexterity spell on | and a fire resistance spell on? Simple - a magician can't concentrate on two effects at the same time. But maybe high-level characters should be able to. How about a system where at any one time, the combined level of the spells in effect can not exceed the character's level. If a level 3 mage casts strength, and then burning hands, the strength spell will cease to function. A level 4 mage would have no problem with that combination, however. Since the how many pluses a Strength spell gives you depends on your current level (it used to, anyway!), I am not sure if another diminishing returns system is needed. +--- | if a spellcaster wants to give up his levitation spell, he should | NOT have to cast an unrelated spell simply to get rid of it! I'll grant you that. Maybe add the command "dispel " and let the user bind "dispel levitate" to a key. +--- Scott Allan Wedekind: | Frankly, I would love to see more spells that are level dependent. | Fireballs, among other attack spells are on the top my list. A high-level character can throw more fireballs, cast more heal spells, etc. You suggestions would mostly help _fighters_, and IMO, fighters are too good magicians already (and vice versa!) Kjetil T. From crossfire-request Sun Mar 20 04:21:59 1994 Return-Path: Received: from grunt.ksu.ksu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sun, 20 Mar 1994 04:21:56 +0100 Received: from cbs.ksu.ksu.edu by grunt.ksu.ksu.edu (8.6.4/1.34) id VAA06742; Sat, 19 Mar 1994 21:21:41 -0600 From: halifax@ksu.ksu.edu (Scott Allan Wedekind) Received: by cbs.ksu.ksu.edu (4.1/1.34) id AA20201; Sat, 19 Mar 94 21:21:41 CST Message-Id: <9403200321.AA20201@cbs.ksu.ksu.edu> Subject: Stat gaining spells To: crossfire@ifi.uio.no (crossfire) Date: Sat, 19 Mar 1994 21:21:40 -0600 (CST) X-Mailer: ELM [version 2.4 PL23] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1417 Status: RO After listening to the different ways of handling stat spells, I would like to throw this one in to keep in mind as well: (assuming nobody has mentioned it before) Make all the stat increasing spells level dependent as to the total max of the stat. Ie a level 5 char would only be able to raise his strength to 4. Level 20 characters would be able to raise stats up to 19. The spell cost would be the same (maybe). Of course this would have to be adjusted to your actual range of levels and stats. But, I do think do level 100 should be able to easily max out his stats with the spells. Duration is another thing that could also be made level dependent. Frankly, I would love to see more spells that are level dependent. Fireballs, among other attack spells are on the top my list. You will have to forgive me if some of this has been done already. The maintainer down here hasn't installed a new version in over 6 months. -- Scott Wedekind (halifax@ksu.ksu.edu) The people of Halifax invented the trampoline. During the Victorian period the tripe-dressers of Halifax stretched tripe across a large wooden frame and jumped up and down on it to `tender and dress' it. The tripoline, as they called it, degenerated into becoming the apparatus for a spectator sport. The people of Halifax also invented the harmonium, a device for castrating pigs during Sunday service. --Dave Barry From crossfire-request Sun Mar 20 01:18:29 1994 Return-Path: Received: from andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sun, 20 Mar 1994 01:18:26 +0100 Received: from localhost (postman@localhost) by andrew.cmu.edu (8.6.4/8.6.4) id TAA12020; Sat, 19 Mar 1994 19:18:20 -0500 Received: via switchmail; Sat, 19 Mar 1994 19:18:19 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sat, 19 Mar 1994 19:16:43 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sat, 19 Mar 1994 19:16:38 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Sat, 19 Mar 1994 19:16:37 -0500 (EST) Message-ID: <8hWtLZm00Zk21biYEJ@andrew.cmu.edu> Date: Sat, 19 Mar 1994 19:16:37 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Crossfire 0.90.3 is released CC: crossfire@ifi.uio.no, mehlhaff@plague.berkeley.edu In-Reply-To: <199403191641.AA10222@plague.berkeley.edu> References: <199403191641.AA10222@plague.berkeley.edu> Status: RO "'Evil' ERic Mehlhaff" writes: > FOr a while I was using the following shellscript as a replacement > to the crossfire 'client': I've been using this for the people at andrew: #!/bin/sh -x echo "New and improved no error checking crossrem" xset fp+ /afs/andrew/usr3/ea08/cfont xhost +madhatter.ws.cc.cmu.edu if [ a$DISPLAY = aunix:0.0 -o a$DISPLAY = a:0.0 ]; then DISPLAY=`/bin/hostname`:0.0 fi (echo "add $DISPLAY";sleep 300;echo "quit") | telnet madhatter.ws.cc.cmu.edu 13326 -- But it's no where near as nice as I'd like it to be. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Sat Mar 19 23:12:36 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Sat, 19 Mar 1994 23:12:30 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id OAA22753; Sat, 19 Mar 1994 14:12:21 -0800 Date: Sat, 19 Mar 1994 14:12:21 -0800 From: Peter Mardahl Message-Id: <199403192212.OAA22753@soda.berkeley.edu> To: kjetilho@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: More maps Cc: crossfire@ifi.uio.no Status: RO I think you should be able to have several magical effects in place at once. Why should it be impossible to have a dexterity spell on and a fire resistance spell on? The way it was before, if you put one in, you lost any other that was there before. That just makes no sense to me. You should be able to put protections and other spells in place at the same time, if you're willing to spend the spellpoints. As to using this force-removing 'feature' to remove levitation, that seems like a very silly trick to me. One should not have to do that: if a spellcaster wants to give up his levitation spell, he should NOT have to cast an unrelated spell simply to get rid of it! Regards, PeterM From crossfire-request Sat Mar 19 23:06:39 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 23:06:35 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id OAA22490; Sat, 19 Mar 1994 14:06:20 -0800 Date: Sat, 19 Mar 1994 14:06:20 -0800 From: Peter Mardahl Message-Id: <199403192206.OAA22490@soda.berkeley.edu> To: Magnus.Heldestad@cs.umu.se, prevosto@enstb.enst-bretagne.fr Subject: Re: More maps Cc: crossfire@ifi.uio.no Status: RO Dear Laurent and company: So it was you guys who did electric dragons, gaeltrolls, and Jessy's? My map editor knows about them. Look in monsters2 in the pickmaps! I put them in there. Those monsters were great work, they look really, really cool. Getting up to level 100 is very hard under the current experience system. Of course, I've never tried letting a monster kill me and then killing it. I put those monsters in the soda archetypes, they weren't in the regular distribution, at least some didn't. I'm glad that I finally found out whose work they were. Make more monsters like that! PeterM From crossfire-request Sat Mar 19 22:57:25 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 22:57:22 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id NAA22057; Sat, 19 Mar 1994 13:57:14 -0800 Date: Sat, 19 Mar 1994 13:57:14 -0800 From: Peter Mardahl Message-Id: <199403192157.NAA22057@soda.berkeley.edu> To: crossfire@ifi.uio.no, prevosto@enstb.enst-bretagne.fr Subject: Re: cheating and suid Status: RO Regarding cheating, it is possible by the rules of the game to create a weapon which is +10 +10 +10 +10.... A ridiculously powerful weapon. I made using weapons made this way harder--each such created weapon has a 'level', and if you are below this level, you cannot use the weapon. Read the section in the code on applying improve_weapon scrolls. Regards, PeterM From crossfire-request Sat Mar 19 18:53:49 1994 Return-Path: Received: from surt.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Sat, 19 Mar 1994 18:53:49 +0100 From: Kjetil Torgrim Homme Received: from localhost by surt.ifi.uio.no ; Sat, 19 Mar 1994 18:53:47 +0100 Date: Sat, 19 Mar 1994 18:53:47 +0100 Message-Id: <19940319175347.16855.surt.ifi.uio.no@ifi.uio.no> To: peterm@soda.berkeley.edu Cc: crossfire@ifi.uio.no In-reply-to: Peter Mardahl's message of Fri, 18 Mar 1994 15:47:29 -0800 <199403182347.PAA25049@soda.berkeley.edu> Subject: Re: More maps Status: RO +--- Peter Mardahl: | I built in a diminishing returns system into repeated casting of | stats on self, but apparently it isn't enough. I plan to make it | more expensive in spellpoints to max yourself out that it is now. You mean it wasn't a bug? I haven't looked at it, since I assumed it would be fixed in the next version. I say: Keep it the way it was. There you can only cast the spell once, and have only one such magical effect in effect. Ie. if you cast Strength, and then Charisma, your strength-bonus will go. More importantly - this is the method used to conveniently float down to the ground after using Levitate... Kjetil T. PS. Another tiny-bug-which-must-have-been-discovered: magic bullet is a level 8 spell :-) From crossfire-request Sat Mar 19 19:21:18 1994 Return-Path: Received: from plague.berkeley.edu by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 19:21:13 +0100 Received: from maelstrom.Berkeley.EDU by plague.berkeley.edu (5.65c/CHAOS) id AA10222; Sat, 19 Mar 1994 08:41:17 -0800 Message-Id: <199403191641.AA10222@plague.berkeley.edu> To: "Eric A. Anderson" Cc: crossfire@ifi.uio.no, mehlhaff@plague.berkeley.edu Subject: Re: Crossfire 0.90.3 is released In-Reply-To: Message from "Eric A. Anderson" of Tue, 15 Mar 1994 14:47:23 -0500 <8hVV3=_00Zk20dD_oT@andrew.cmu.edu> Date: Sat, 19 Mar 1994 08:41:09 -0800 From: "'Evil' ERic Mehlhaff" Status: RO "Eric A. Anderson" recently wrote: >Note to developers: We should really create a perl script or shell >script that will add someone to the game. They'd be able to get a >feel for what crossfire is like before they go to the trouble of >compiling it. > -Eric FOr a while I was using the following shellscript as a replacement to the crossfire 'client': #!/bin/sh echo "add $DISPLAY" | telnet "$*" 13326 The sad part was that this actually worked. Usage was 'crossclient hostnme' It, of course, assumed your DISPLAY was set properly, and you had no X security on your display. ERic mehlhaff, mehlhaff@ocf.Berkeley.EDU From crossfire-request Sat Mar 19 17:35:49 1994 Return-Path: Received: from mother.ludd.luth.se by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 17:35:47 +0100 Received: from vortex.sdf.luth.se (vortex.sdf.luth.se [130.239.144.1]) by mother.ludd.luth.se (8.6.7/8.6.6) with SMTP id RAA11618 for ; Sat, 19 Mar 1994 17:35:44 +0100 Received: from krikkit.sdf.luth.se ([130.239.144.11]) by vortex.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA01069; Sat, 19 Mar 94 17:31:39 +0100 Received: by krikkit.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA26189; Sat, 19 Mar 94 17:32:35 +0100 From: Emil.Larsson@sdf.luth.se (Emil Larsson) Message-Id: <9403191632.AA26189@krikkit.sdf.luth.se> Subject: Help To: crossfire@ifi.uio.no Date: Sat, 19 Mar 94 17:32:34 MET X-Mailer: ELM [version 2.3 PL0] Status: RO Anyone who can help me to not go down in the grass in crossfire 0.90.3 -- name: Emil Larsson email: emil@sdf.luth.se Be wary of strong drinks. It can make you shoot at tax collectors and miss. From crossfire-request Sat Mar 19 16:14:17 1994 Return-Path: Received: from melimelo.enst-bretagne.fr by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 16:14:17 +0100 Received: from enstb.enst-bretagne.fr by melimelo.enst-bretagne.fr (5.67b8/090294); Sat, 19 Mar 1994 16:12:20 +0100 Received: from marot.enst-bretagne.fr by enstb.enst-bretagne.fr (5.65c8/180193); Sat, 19 Mar 1994 16:14:20 +0100 Date: Sat, 19 Mar 1994 16:14:20 +0100 From: prevosto@enstb.enst-bretagne.fr (Laurent I9 012 1803) Message-Id: <199403191514.AA04000@enstb.enst-bretagne.fr> To: Magnus.Heldestad@cs.umu.se Subject: Re: More maps Cc: crossfire@ifi.uio.no X-Charset: LATIN1 X-Char-Esc: 29 Status: RO Here, we are still playing with 0.90.1 maps : the map file of version 0.90.2 seems to be very small and we need a lot of maps since lots of people play Crossfire here. If you want to try brittany maps, bring back the 0.90.1 maps and add them to th 0.90.2's ones. We added terrible monsters suh as the gaellotrol, electric dragon....... and The Jessy. Some of our maps are sometimes very hard : it was for our 100 level characters. I have friends who know the game in such a perfect way that they could start a character and bring it to level 100 without dying and cheating in only one afternoon ! ( without using the famous bug : wear an amulet of lifesaving, let a monster kill you one time,... and drain it with your stormbringer/mournblade sword. Your exp will be increase by 150% :) ) But, if you are good at Crossfire, you can do most of them i think, even with this new version. Maybe we could modify our maps to make some of them easier and add new ones... but only if they are re-included in the new version on the game (ie 0.90.4 maps) I think Crtossfire requires hard maps... even if you have to try and try and try to win them. You will be very happy then :) We did such maps... use them then ! Unfortunately, they cannot be edited with the mapeditor : it doesn't know our monsters :( Laurent ***** Yet Another Crossfire Player ***** From crossfire-request Sat Mar 19 16:07:54 1994 Return-Path: Received: from chsun.eunet.ch by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 16:07:52 +0100 Received: from riva.dial.eunet.ch by chsun.eunet.ch (8.6.4/1.34) id QAA23405; Sat, 19 Mar 1994 16:10:51 +0100 Received: from localhost (markus@localhost) by riva.dial.eunet.ch (8.6.5/8.6.5) id QAA02266 for crossfire@ifi.uio.no; Sat, 19 Mar 1994 16:04:33 +0100 Date: Sat, 19 Mar 1994 16:04:33 +0100 From: Markus Weber Message-Id: <199403191504.QAA02266@riva.dial.eunet.ch> To: crossfire@ifi.uio.no Subject: map checker Status: RO Yo Folks :-) I love playing crossfire, but the (non-chico) maps are driving me to distraction... Here's a small perl script I hacked together to perform some elementary consistency checks on the maps. The script is appended to the end of this mail. Basically, the script scans the CLibDir/archetypes file for valid archetypes, derives the start map from this file and performs a depth-first walk through the reachable(!) maps. The checks performed are: * Verify that archetypes in maps are valid, i.e. defined in CLibDir/archetypes. * Complain if button, gate, etc. isn't connected, i.e. defaults. Usually this is done for "cosmetical" reasons, but in some cases the map is broken. * Complain if an exit archetype is missing a destination map. The script makes a distinction between truly "closed" exits and those with a defaulting exit map, which is bad news on certain maps. * Verify that a given exit map does indeed exist. The output of this tool may be filtered with several goals in mind: a) Generate list of reachable maps (relative to the start map, of course). Comparing this list to a "find" listing of the map directory proves instructional, at least as far as the 0.90.1 maps are concerned. Out of 800++ files in the map dir, only 550 are reachable from /village/village. Skript example: grep ^visiting RESULT | sed 's/^visiting //' | sort > Maps.Reached b) Filter all the error messages, of course. Alas, there's a certain amount of unavoidable noise. c) Generate raw data for a connectivity graph: grep ^exit RESULT | sed 's/^exit //' | sort | uniq > Exits This filtered output is very handy if you plan to move maps around. You should be able perform additional checks with these data: * find the shortest path from map A to map B (using the hop count metric) * find all loop-free paths from A to B * find any/all paths from A to B not crossing C * verify that there are no dead ends. This script definitely has some very rough edges and the code isn't pretty. On the other hand, it's extremely useful for me in its current form; as always, your mileage may vary. Many consistency checks that come to mind require knowledge of the local map, or that of "neighboring" maps. Other checks need to parse even more archetype fields. In order of increasing difficulty: * Check the "food" field for non-exit archetypes (it should be numerical). The old maps have been converted a few times too often. * Search objects without solid ground underneath. Not an error, but ugly. * Verify that jump targets (e.g. of teleporters, pits) are legal: You should NOT end up in a wall, in the sea, on top of a monster and the like. * Above for exits to other maps. -Markus --------------------- #!/bin/perl # # (C) Copyright Markus Weber, 1994. All rights reserved. # Permission is granted to use, copy, and modify for non-commercial use. # # usage: check-consistency.pl [options]... # Options: # archdb=pathname-of-archetype-database *** not used *** # default ./ARCHDB .{dir,pag} # archetypes=pathname-of-archetypes-file # default $cfdir/lib/archetypes # cfdir=pathname-to-crossfire-installation # default /opt/cf0901 (hardcoded) # mapdir=pathname-of-map-directory # default $cfdir/lib/maps # start-map=map-path-of-starting map # default (init in archetypes) # %% make it a command line option $debug = 1; # # ARGUMENT PROCESSING # # preset options $cfdir = "/opt/cf0903"; $archdb = "./ARCHDB"; # loop thru arg vector while (@ARGV) { $_ = @ARGV[0]; if (/^archdb=/) { ($junk,$archdb) = split(/=/,$ARGV[0]); shift; } elsif (/^archetypes=/) { ($junk,$archetypes) = split(/=/,$ARGV[0]); shift; } elsif (/^cfdir=/) { ($junk,$cfdir) = split(/=/,$ARGV[0]); shift; } elsif (/^mapdir=/) { ($junk,$mapdir) = split(/=/,$ARGV[0]); shift; } elsif (/^start-map=/) { ($junk,$start_map) = split(/=/,$ARGV[0]); shift; } } # post-process $mapdir = "$cfdir/lib/maps" unless defined($mapdir); $archetypes = "$cfdir/lib/archetypes" unless defined($archetypes); print STDERR "DBG: archetypes=$archetypes\n" if $debug > 5; print STDERR "DBG: archdb=$archdb\n" if $debug > 5; print STDERR "DBG: mapdir=$mapdir\n" if $debug > 5; # open archetypes database print STDERR "DBG: opening archdb: $archdb\n" if $debug > 5; # %% performance booster: put assoc arrays in dbm files: #if ( -f "$archdb.pag) { $skip_db_init = 1; } #dbmopen(%ARCHDB,$archdb,0644) || die "can't dbmopen $archdb"; # # INIT ARCHETYPES DATABASE # print STDERR "DBG: initializing archetype database...\n" if $debug; &init_archetypes_database; # unless $skip_db_init; print STDERR "DBG: ...done\n" if $debug; defined($start_map) || die "FATAL: no starting map"; # %% save start map in database #$ARCHDB{"_start_map"} = $start_map; print STDERR "DBG: start_map=$start_map\n" if $debug; # select archetypes of special interest # %% skip iff $skip_db_init, dbmopen() the arrays instead print STDERR "DBG: scanning for archetypes of special interest...\n" if $debug; while ( ($arch,$type) = each(%ARCHDB) ) { next if !defined($type); # skip if not special $_ = $type; # see below if ($type == 41 || $type == 66 || $type == 94) { # EXITS: archetypes with exits to other maps $EXITS{$arch} = 1; } # Bad Programming Style Alert. Don't try this at home! elsif (/^1[78]$/ || /^2[679]$/ || /^3[012]$/ || /^9[123]$/) { # CONNECT: "connected" archetypes, # e.g. buttons, handles, gates, ... $CONNECT{$arch} = 1; } } print STDERR "DBG: ...done.\n" if $debug; # # MAIN LOOP # # pathname of start_map is assumed to be absolute (e.g. /village/village push(@MAPS,$start_map); while ($map = pop(@MAPS)) { next if $visited{$map}; # skip if been here before $visited{$map} = 1; # flag it if not print STDERR "DBG: visiting $map\n" if $debug; print "visiting $map\n" if $debug; # # side effect: check_map pushes any (legal) exits found on stack # &check_map($map); } #dbmclose(ARCHDB); exit; # # ++++++++++++++++++++ END OF MAIN ++++++++++++++++++ # # # INIT ARCHETYPES DATABASE # # store (archname,type) pairs # sub init_archetypes_database { local($arch_lines,$arches); # counters local($arch,$type,$slaying); # values local($junk); print STDERR "DBG: opening archetypes: $archetypes\n" if $debug > 5; open(ARCHETYPES,$archetypes) || die "can't open $archetypes"; $arch_lines = 0; $arches = 0; $type = 0; while ( ) { $arch_lines++; if (/^Object\s/) { ($junk,$arch) = split; if (!defined($arch)) { print STDERR "$archetypes: bad Object, line $arch_lines\n"; } } elsif (/^type\s/) { ($junk,$type) = split; if (!defined($type)) { print STDERR "$archetypes: bad type, line $arch_lines\n"; } } elsif (/^slaying\s/ && $arch eq "map") { ($junk,$slaying) = split; # don't care if defined or not (yet) } elsif (/^end$/) { print STDERR "DBG: entered arch=$arch, optional type=$type\n" if $debug > 10; next if (!defined($arch)); # don't care whether $type defined or not $ARCHDB{$arch} = $type; $arches++; $type = 0; } } # # find start map # print error message iff "map" arch not found or missing path # assign start map (unless pre-defined on cmd line) # if (!defined($slaying)) { print STDERR "***ERROR*** no map object or map path missing\n"; } elsif (!defined($start_map)) { $start_map = $slaying; } #print STDERR "DBG: start_map=$start_map\n"; close(ARCHETYPES); print STDERR "DBG: closed $archetypes, $arch_lines lines, $arches arches\n" if $debug > 5; } # # CHECK MAP FOR ELEMENTARY CONSISTENCY # sub check_map { local($map) = @_; local($arch,$connected,$slaying,$exit,$x,$y); local($lines,$fullmap); local($junk); # build full pathname (nb: map path starts with /) and open map file $fullmap = "$mapdir$map"; open(MAP,$fullmap) || die "can't open $fullmap"; print STDERR "DBG: opened $map\n" if $debug > 5; $lines = 0; while ( ) { $lines++; if (/^arch\s/) { ($junk,$arch) = split; undef($slaying); undef($x); undef($y); undef($connected); } elsif (/^connected\s/) { ($junk,$connected) = split; } elsif (/^slaying\s/) { ($junk,$slaying) = split; } elsif (/^hp\s/) { ($junk,$x) = split; } elsif (/^sp\s/) { ($junk,$y) = split; } next if !/^end$/; # continue iff not end of arch # # CHECK 1: valid archetype? # if (!defined($ARCHDB{$arch})) { #print STDERR "FATAL: map $map, line $lines, bad archetype: $arch\n"; print "FATAL: map $map, line $lines, bad archetype: $arch\n"; next; } # # CHECK 2: connect-arch actually connected? # NB: if not, that's perfectly legal, but suspicious # if ($CONNECT{$arch}) { if (!$connected) { #print STDERR "WARNING: map $map, line $lines, arch $arch, not connected\n"; print "WARNING: map $map, line $lines, arch $arch, not connected\n"; } next; } next if !$EXITS{$arch}; # continue if not an exit # # CHECK 3: exit-type arch, but no path given # Presumably the path defaults to the local map, # but in all probability this is an error # if (!defined($slaying)) { if ($x || $y) { #print STDERR "ERROR: map $map, line $lines, arch $arch, exit defaults\n"; print "ERROR: map $map, line $lines, arch $arch, exit defaults\n"; } else { #print STDERR "INFO: map $map, line $lines, arch $arch, no exit defined\n"; print "INFO: map $map, line $lines, arch $arch, no exit defined\n"; } next; } # # CHECK 4: verify that exit map exists # if not, the game (hopefully!) won't crash, but # chances are this _is_ an error # # # normalize exit path (FullyQualifiedPathName :-))) # (i.e. construct absolute pathname, rooted in CLibDir/maps) # E.g.: # current map: /village/somewhere # EXIT PATH YIELDS # /village/building /village/building # townhouse /village/townhouse # ../island /island # $_ = "$map $slaying"; # easy matching :-) # /path/map exit --> /path/map /path/exit s@^(/.*/)([^/]*)\s([^\./].*)$@\1\2 \1\3@; # /path/map ../exit --> /path/map /path/../exit s@^(/.*/)([^/]*)\s(\.\./.*)$@\1\2 \1\3@; # /dir/../ --> / (all occurances) s@/[^/]*/\.\./@/@g; ($junk,$exit) = split; #print STDERR "DBG: exit $map $exit\n" if $debug > 5; print "exit $map $exit\n"; # # shortcut: if the exit map was already checked, don't bother # stacking it again. # %% if a map is never pushed twice in the first place, # the corresponding test in the main loop is probably # in vain. # next if $visited{$exit}; # # this is check 4, finally. # if exit map can't be opened, complain and continue # if ( ! (-r "$mapdir$exit") ) { #print STDERR "ERROR: map $map, arch $arch, line $lines, no such exit $exit\n"; print "ERROR: map $map, arch $arch, line $lines, no such exit $exit\n"; next; } # # the exit map looks good; push it and continue push(@MAPS,$exit); } close(MAP); } # --EOF-- From crossfire-request Sat Mar 19 16:06:27 1994 Return-Path: Received: from chsun.eunet.ch by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 16:06:26 +0100 Received: from riva.dial.eunet.ch by chsun.eunet.ch (8.6.4/1.34) id QAA23311; Sat, 19 Mar 1994 16:09:33 +0100 Received: from localhost (markus@localhost) by riva.dial.eunet.ch (8.6.5/8.6.5) id QAA02257 for crossfire@ifi.uio.no; Sat, 19 Mar 1994 16:03:19 +0100 Date: Sat, 19 Mar 1994 16:03:19 +0100 From: Markus Weber Message-Id: <199403191503.QAA02257@riva.dial.eunet.ch> To: crossfire@ifi.uio.no Subject: Re: More maps Status: RO Yo Mark :-) I've already cleaned up the old maps (some) and merged them into the chico maps. For one thing, all these maps now use relative path names for exits, which makes it very painless to move map subdirectories. I can upload these maps to ifi if anybody but me cares for them :-) -Markus From crossfire-request Sat Mar 19 15:52:43 1994 Return-Path: Received: from melimelo.enst-bretagne.fr by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 15:52:42 +0100 Received: from enstb.enst-bretagne.fr by melimelo.enst-bretagne.fr (5.67b8/090294); Sat, 19 Mar 1994 15:50:52 +0100 Received: from marot.enst-bretagne.fr by enstb.enst-bretagne.fr (5.65c8/180193); Sat, 19 Mar 1994 15:52:52 +0100 Date: Sat, 19 Mar 1994 15:52:52 +0100 From: prevosto@enstb.enst-bretagne.fr (Laurent I9 012 1803) Message-Id: <199403191452.AA03818@enstb.enst-bretagne.fr> To: crossfire@ifi.uio.no Subject: cheating and suid X-Charset: LATIN1 X-Char-Esc: 29 Status: RO Inge Berg Fenstad wrote : > Make yourself a HUGE weapon...like +10+10+10+10+10 Of course, if you cheat, the game is really easy to win... you can also add a ring imune 65535, and the spells large icestorm, dragonbreath and hellfire to your character sheet... Here, we have always played with the non-client/server game with suid bit : crossfire's character sheets are -rw-rw-rw. That's too easy to cheat. We have suppressed it ! Could you explain me how you reach 30 in all stats without modifying your player file ? I know there is this bug that increases your stats when you die if you are at least level 14 but that's not enough. We had implemented this for the previous version : each night, a cron copy the whole player directory in a player.backup directory. If you die, your .pl file is deleted... So, the cron looks for difference between the player dir and the player.backup dir. If a player has died, he is in the second one and not in the first one. Then its whole equipment and known spells are deleted and the player his restored in the player dir (it will appear in a map-church). But stats and exp are not modified... I think it was a good system. Of course, if you die, you will only be able to play the following day... and you will get your character as it was the previous day. You will be more carefull next time ! But I think current system is quite good too... if you don't cheat Laurent From crossfire-request Sat Mar 19 07:18:20 1994 Return-Path: Received: from po2.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 07:18:15 +0100 Received: from localhost (postman@localhost) by po2.andrew.cmu.edu (8.6.4/8.6.4) id BAA22324 for crossfire@ifi.uio.no; Sat, 19 Mar 1994 01:18:10 -0500 Received: via switchmail; Sat, 19 Mar 1994 01:18:09 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sat, 19 Mar 1994 01:16:28 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Sat, 19 Mar 1994 01:16:25 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Sat, 19 Mar 1994 01:16:22 -0500 (EST) Message-ID: Date: Sat, 19 Mar 1994 01:16:22 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: More maps In-Reply-To: <199403182348.PAA25180@soda.berkeley.edu> References: <199403182348.PAA25180@soda.berkeley.edu> Status: RO Peter Mardahl writes: > You can SO go higher then level 24. It is just very hard. Are you sure? From common/living.c in add_exp: if(op->stats.exp>99999999) op->stats.exp=99999999; -- Inge Berg Fenstad writes: > You can get a lot a easy potions...and money....and exp. > And then you get 30 in all stats...EASY. > Just cast multiple stat-spells on yourself...and slay the world. > OR > Make yourself a HUGE weapon...like +10+10+10+10+10 > The improve-scrolls are easy to get..so are the potions you need. I'll go ahead and ask, where can you get all of these things? I haven't seen any of the super-potions that I added a long time ago, hence you can't get your stat's up to 30 unless you've found a bug. Also, where do you get these HUGE weapons? I haven't seen any of the improve scrolls. Anyway, if it hadn't changed from a previous version, you needed LOTS of diamonds to make things, certainly a lot more than what you should be able to get. (Back in 89.2, I estimated I had sunk >5 million gold equivelent into a weapon. I was also level 70+ at that time.) -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Sat Mar 19 00:48:50 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 00:48:45 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id PAA25180; Fri, 18 Mar 1994 15:48:25 -0800 Date: Fri, 18 Mar 1994 15:48:25 -0800 From: Peter Mardahl Message-Id: <199403182348.PAA25180@soda.berkeley.edu> To: Magnus.Heldestad@cs.umu.se, crossfire@ifi.uio.no, prevosto@enstb.enst-bretagne.fr Subject: Re: More maps Status: RO You can SO go higher then level 24. It is just very hard. PeterM From crossfire-request Sat Mar 19 00:48:04 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 19 Mar 1994 00:48:00 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id PAA25049; Fri, 18 Mar 1994 15:47:29 -0800 Date: Fri, 18 Mar 1994 15:47:29 -0800 From: Peter Mardahl Message-Id: <199403182347.PAA25049@soda.berkeley.edu> To: Inge.Fenstad@alkymi.unit.no, Magnus.Heldestad@cs.umu.se Subject: Re: More maps Cc: crossfire@ifi.uio.no Status: RO I built in a diminishing returns system into repeated casting of stats on self, but apparently it isn't enough. I plan to make it more expensive in spellpoints to max yourself out that it is now. PeterM From crossfire-request Fri Mar 18 22:37:38 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 22:37:27 +0100 Received: by bolero.rahul.net id AA02900 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Fri, 18 Mar 1994 13:36:05 -0800 Date: Fri, 18 Mar 1994 13:36:05 -0800 From: Mark Wedel Message-Id: <199403182136.AA02900@bolero.rahul.net> To: Magnus.Heldestad@cs.umu.se, karim@ecst.csuchico.edu Subject: Re: More maps Cc: crossfire@ifi.uio.no Status: RO I plan to merge iin the old maps at some time. But I just don't want to copy all of them over. Rather, I want to go through them one at a time, and only include the good ones (or fix any problems with the bad ones.) The chico maps gave a good working set of good maps. IT seems pointless to dump in all the old maps, and have a bunch of bad maps included. --MArk From crossfire-request Fri Mar 18 21:58:33 1994 Return-Path: Received: from hairball.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 21:58:13 +0100 Received: (from karim@localhost) by hairball.ecst.csuchico.edu (8.6.7/8.6.6) id MAA00826; Fri, 18 Mar 1994 12:54:10 -0800 From: KARIM SANJABI Message-Id: <199403182054.MAA00826@hairball.ecst.csuchico.edu> Subject: Re: More maps To: Magnus.Heldestad@cs.umu.se Date: Fri, 18 Mar 1994 12:54:10 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: <9403181721.AA01635@salt.cs.umu.se> from "Magnus.Heldestad@cs.umu.se" at Mar 18, 94 06:21:53 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1156 Status: RO > > > I have been playing with the chico maps for a week, (cf v 0.90.3), and they > are quite good BUT there aren't enough of them. I am only level 10 with my > mage and I have been almost everywhere. > So, in other words....MORE MAPS!!! > > If anybody have merged new maps with the 0.90.2 maps, please let the rest > of the world know! > > Btw, excellent game, great improvement since 0.89.2 (last version I played)! > But there are still a lot of smaller bugs. > > Magnus > > -- > Magnus Heldestad, Deptartment of Computing Science > Umea University, S-90187 Umea, Sweden > Internet: magnus@cs.umu.se Phone: +46 90 166945 > hey, Coming from us Chico guys (or at least some of us), thanks, and glad you liked them. Crossfire *playing* in chico has died down some, but Tyler (tvangod) has promised that he will try to raise enthusiasm. Last semester, everyone here was playing crossfire, and then started making maps. At one point, we would have like 5 people making maps at all times! Now that I think about it, quite a few of the chico maps are unfinished. Or at least, the whole story behind them are not complete... Karim From crossfire-request Fri Mar 18 21:14:15 1994 Return-Path: Received: from melimelo.enst-bretagne.fr by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 21:14:09 +0100 Received: from enstb.enst-bretagne.fr by melimelo.enst-bretagne.fr (5.67b8/090294); Fri, 18 Mar 1994 21:12:18 +0100 Received: from lune.enst-bretagne.fr by enstb.enst-bretagne.fr (5.65c8/180193); Fri, 18 Mar 1994 21:14:18 +0100 Date: Fri, 18 Mar 1994 21:14:18 +0100 From: prevosto@enstb.enst-bretagne.fr (Laurent I9 012 1803) Message-Id: <199403182014.AA27315@enstb.enst-bretagne.fr> To: Magnus.Heldestad@cs.umu.se, crossfire@ifi.uio.no Subject: Re: More maps X-Charset: LATIN1 X-Char-Esc: 29 Status: RO Mhh you think Chico maps are too easy. So why don't you try the brittany maps ? Unfortunately, i am afraid that now, some of them cannot be finished since u can't go higher than level 24 any more... Nevertheless, you can finish most of them... and why not kill the Jessy :-) Laurent From crossfire-request Fri Mar 18 20:32:40 1994 Return-Path: Received: from mother.ludd.luth.se by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 20:32:39 +0100 Received: from vortex.sdf.luth.se (vortex.sdf.luth.se [130.239.144.1]) by mother.ludd.luth.se (8.6.7/8.6.6) with SMTP id UAA01261 for ; Fri, 18 Mar 1994 20:32:37 +0100 Received: from krikkit.sdf.luth.se ([130.239.144.11]) by vortex.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA28514; Fri, 18 Mar 94 20:28:37 +0100 Received: by krikkit.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA17470; Fri, 18 Mar 94 20:29:35 +0100 From: Emil.Larsson@sdf.luth.se (Emil Larsson) Message-Id: <9403181929.AA17470@krikkit.sdf.luth.se> Subject: Crossfire problem To: crossfire@ifi.uio.no Date: Fri, 18 Mar 94 20:29:33 MET X-Mailer: ELM [version 2.3 PL0] Status: RO When I start Crossfire I get this error message. Are there anyone who can help me to correct this problem. Welcome to CrossFire, v0.90.3, copyright (C) 1992 Frank Tore Johansen. Maintained locally by: diku@sdf.luth.se Questions and bugs should be mailed to above address. Switching to black and white. You have a black and white terminal. Trying to fix fontpath for display trillian:0. Error code BadValue (integer parameter out of range for operation) Failed, switching to pixmaps (this might take a while). Warning: cannot read from file Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Error code BadDrawable (invalid Pixmap or Window parameter) Emergency save: trillian (failed) Fatal: Too many errors Emergency save: trillian (failed) Cleaning up... Exiting... Exit 3 -- name: Emil Larsson email: emil@sdf.luth.se Be wary of strong drinks. It can make you shoot at tax collectors and miss. From crossfire-request Fri Mar 18 20:06:08 1994 Return-Path: Received: from ild.alkymi.unit.no by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 20:06:08 +0100 Received: from jord.alkymi.unit.no by ild.alkymi.unit.no with SMTP id AA16517 (5.65c/IDA-1.4.4 for ); Fri, 18 Mar 1994 20:05:58 +0100 From: Inge Berg Fenstad Received: by jord.alkymi.unit.no ; Fri, 18 Mar 1994 20:06:26 +0100 Message-Id: <199403181906.AA13413@jord.alkymi.unit.no> Subject: Re: More maps To: Magnus.Heldestad@cs.umu.se Date: Fri, 18 Mar 1994 20:06:25 +0100 (MET) Cc: crossfire@ifi.uio.no In-Reply-To: <9403181721.AA01635@salt.cs.umu.se> from "Magnus.Heldestad@cs.umu.se" at Mar 18, 94 06:21:53 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 1006 Status: RO Hi I have had the opportunity to have a the newest version of crossfire running at my school for about a week and have discovered several things: The balance in the game is ok up to perhaps lvl 10-12, but then things become to get out of hand. You can get a lot a easy potions...and money....and exp. And then you get 30 in all stats...EASY. Just cast multiple stat-spells on yourself...and slay the world. OR Make yourself a HUGE weapon...like +10+10+10+10+10 The improve-scrolls are easy to get..so are the potions you need. And what then....well...you notice the game is COMPLETELY unbalanced. There have been talk on the list about weight....WHy then is there made a chest that reduses carried weight by 75%....???? Sure there are few and unfinished maps.....but as the game is now... more maps would probably make it worse. Are there any plans of reducing the power of spells on self or increasing difficulty of maps..or is this becoming even more unbalanced than the previous version ? Inge From crossfire-request Fri Mar 18 18:21:34 1994 Return-Path: Received: from sunic.sunet.se by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 18:21:34 +0100 From: Magnus.Heldestad@cs.umu.se Received: from ume.cs.umu.se by sunic.sunet.se (8.6.7/2.03) id SAA09242; Fri, 18 Mar 1994 18:21:32 +0100 Received: from salt.cs.umu.se by ume.cs.umu.se with SMTP (5.65+bind 1.7+ida 1.4.2/91-02-01) id AA13766; Fri, 18 Mar 94 18:21:30 +0100 (rfc931-sender: magnus@salt.cs.umu.se) Received: by salt.cs.umu.se (5.65+bind 1.7+ida 1.4.2/91-02-01) id AA01635; Fri, 18 Mar 94 18:21:53 +0100 (rfc931-sender: magnus@salt.cs.umu.se) Message-Id: <9403181721.AA01635@salt.cs.umu.se> Subject: More maps To: crossfire@ifi.uio.no Date: Fri, 18 Mar 1994 18:21:53 +0100 (MET) X-Mailer: ELM [version 2.4 PL23] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 600 Status: RO I have been playing with the chico maps for a week, (cf v 0.90.3), and they are quite good BUT there aren't enough of them. I am only level 10 with my mage and I have been almost everywhere. So, in other words....MORE MAPS!!! If anybody have merged new maps with the 0.90.2 maps, please let the rest of the world know! Btw, excellent game, great improvement since 0.89.2 (last version I played)! But there are still a lot of smaller bugs. Magnus -- Magnus Heldestad, Deptartment of Computing Science Umea University, S-90187 Umea, Sweden Internet: magnus@cs.umu.se Phone: +46 90 166945 From crossfire-request Fri Mar 18 20:31:30 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 18 Mar 1994 20:31:24 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA05241; Fri, 18 Mar 1994 14:27:59 +0500 Date: Fri, 18 Mar 1994 14:27:59 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403181927.AA05241@acasun.eckerd.edu> To: crossfire@ifi.uio.no Content-Length: 280 Status: RO It seems getting experiance from kills doesn't go down when you go up levels anymore.. SHould it? Zombies give you 30exp when you are level 1, and still give 30 when you are level 4. The undead church is an easy and safe way to go up a good 3-4 levels fast, because of that... From crossfire-request Thu Mar 17 10:01:19 1994 Return-Path: Received: from anna.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Thu, 17 Mar 1994 10:01:17 +0100 Received: from localhost (hevi@localhost) by anna.it.lut.fi (8.6.5/8.6.5/1.12.kim) id LAA02850; Thu, 17 Mar 1994 11:01:14 +0200 Date: Thu, 17 Mar 1994 11:01:09 +0200 (EET) From: Petri Heinil{ Subject: Re: compiling crossedit... To: crossfire@ifi.uio.no In-Reply-To: <9403161816.AA01359@ceres.jsp.umontreal.ca> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Wed, 16 Mar 1994, Daniel Cote wrote: > I'm trying to compile crossedit, in test.c I had to change the declaration > of int argc, to unsigned int argc. I hope that won't cause other problems. > > Then, I have the following problem: > > ---------------------------------------------------------------- > making all in ./crossedit/include... > cc -O2 -I/usr/include -I. -I../include -I./include -I./Cnv -DSYSV -DMALLOC_0_RETURNS_NULL -DFUNCPROTO -DNARROWPROTO -DFONTDIR=\"/JSP/C1/usagers/casino/lib/xfire/fonts\" -DFONTNAME=\"crossfire\" -Dsgi -DLIBDIR=\"/JSP/C1/usagers/casino/lib/xfire\" -c Attr.c > accom: Error: Attr.c, line 737: prototype parameter 3 type must have all of the actual arguments qualifiers (except the outermost) and pointed-to types must be compatible (ANSI 3.3.2.2,3.3.16.1) > self->desc[i].getValue (ob, buf, self->client); > ------------------------------------------------^ > accom: Error: Attr.c, line 737: Argument 3 Type Doesn't Match prototype description; prototype: pointer to char is different from actual: pointer to struct > self->desc[i].getValue (ob, buf, self->client); > ------------------------------------------------^ > accom: Error: Attr.c, line 892: prototype parameter 3 type must have all of the actual arguments qualifiers (except the outermost) and pointed-to types must be compatible (ANSI 3.3.2.2,3.3.16.1) > self->desc[i].putValue (ob, str, self->client); > ------------------------------------------------------^ > accom: Error: Attr.c, line 892: Argument 3 Type Doesn't Match prototype description; prototype: pointer to char is different from actual: pointer to struct > self->desc[i].putValue (ob, str, self->client); > ------------------------------------------------------^ > *** Error code 1 > ----------------------------------------------------------------- > > Do you have any idea what I should do to finish crossedit's compilation ? I think there is missing cast before self->client, it should be (XtPointer)self->client. ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Thu Mar 17 01:52:23 1994 Return-Path: Received: from cirrus.SEAS.UCLA.EDU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Thu, 17 Mar 1994 01:52:19 +0100 Received: from CAD.UCLA.EDU by cirrus.SEAS.UCLA.EDU (AIX 3.2/UCB 5.64/4.03(UCLA 1.06)multi-name+EA) id AA17229; Wed, 16 Mar 1994 16:51:58 -0800 Received: by CAD.UCLA.EDU (AIX 3.2/UCB 5.64/4.03) id AA36599; Wed, 16 Mar 1994 16:51:58 -0800 Date: Wed, 16 Mar 1994 16:51:58 -0800 From: jonathan@CAD.UCLA.EDU (Jonathan Katz) Message-Id: <9403170051.AA36599@CAD.UCLA.EDU> To: crossfire@ifi.uio.no Subject: Mailing list... Status: RO Is there a separate crossfire-annouce group that I can join? I am interested in new developments, but, I cant currently participate in debugging/etc. so most of the articles are not of interest to me... Thanks Jonathan From crossfire-request Wed Mar 16 20:38:15 1994 Return-Path: Received: from condor.CC.UMontreal.CA by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 20:38:10 +0100 Received: from aster.JSP.UMontreal.CA by condor.CC.UMontreal.CA with SMTP id AA13583 (5.65c/IDA-1.4.4 for crossfire@ifi.uio.no); Wed, 16 Mar 1994 13:16:21 -0500 Received: from ceres.jsp.umontreal.ca by aster.jsp.umontreal.ca (920330.SGI/5.17) id AA20170; Wed, 16 Mar 94 13:16:13 -0500 Received: by ceres.jsp.umontreal.ca (920330.SGI/5.17) id AA01359; Wed, 16 Mar 94 13:16:46 -0500 Message-Id: <9403161816.AA01359@ceres.jsp.umontreal.ca> From: casino@JSP.UMontreal.CA (Daniel Cote) Date: Wed, 16 Mar 1994 13:16:45 -0500 X-Mailer: Mail User's Shell (JSP Hacked Version) (7.2.5 10/14/92) To: crossfire@ifi.uio.no Subject: compiling crossedit... Status: RO I'm trying to compile crossedit, in test.c I had to change the declaration of int argc, to unsigned int argc. I hope that won't cause other problems. Then, I have the following problem: ---------------------------------------------------------------- making all in ./crossedit/include... cc -O2 -I/usr/include -I. -I../include -I./include -I./Cnv -DSYSV -DMALLOC_0_RETURNS_NULL -DFUNCPROTO -DNARROWPROTO -DFONTDIR=\"/JSP/C1/usagers/casino/lib/xfire/fonts\" -DFONTNAME=\"crossfire\" -Dsgi -DLIBDIR=\"/JSP/C1/usagers/casino/lib/xfire\" -c Attr.c accom: Error: Attr.c, line 737: prototype parameter 3 type must have all of the actual arguments qualifiers (except the outermost) and pointed-to types must be compatible (ANSI 3.3.2.2,3.3.16.1) self->desc[i].getValue (ob, buf, self->client); ------------------------------------------------^ accom: Error: Attr.c, line 737: Argument 3 Type Doesn't Match prototype description; prototype: pointer to char is different from actual: pointer to struct self->desc[i].getValue (ob, buf, self->client); ------------------------------------------------^ accom: Error: Attr.c, line 892: prototype parameter 3 type must have all of the actual arguments qualifiers (except the outermost) and pointed-to types must be compatible (ANSI 3.3.2.2,3.3.16.1) self->desc[i].putValue (ob, str, self->client); ------------------------------------------------------^ accom: Error: Attr.c, line 892: Argument 3 Type Doesn't Match prototype description; prototype: pointer to char is different from actual: pointer to struct self->desc[i].putValue (ob, str, self->client); ------------------------------------------------------^ *** Error code 1 ----------------------------------------------------------------- Do you have any idea what I should do to finish crossedit's compilation ? Daniel From crossfire-request Wed Mar 16 19:08:01 1994 Return-Path: Received: from yucca.cs.odu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 19:07:57 +0100 Received: from dustdevil.cs.odu.edu (dustdevil.cs.odu.edu [128.82.6.32]) by yucca.cs.odu.edu (8.6.4/8.6.4) with ESMTP id NAA08449; Wed, 16 Mar 1994 13:10:13 -0500 From: Matthew Zeher Received: from localhost (matt@localhost) by dustdevil.cs.odu.edu (8.6.4/8.6.4) id NAA02806; Wed, 16 Mar 1994 13:10:44 -0500 Date: Wed, 16 Mar 1994 13:10:44 -0500 Message-Id: <199403161810.NAA02806@dustdevil.cs.odu.edu> To: Mark Wedel CC: crossfire@ifi.uio.no Subject: Re: xpm slow? In-Reply-To: <199403161637.AA22559@bolero.rahul.net> References: <199403161637.AA22559@bolero.rahul.net> Status: RO Mark Wedel writes: -> The problem is that method will probably create flickering of the -> objects. -> -> After copying the background pixmap, it will probably refresh the -> screen before the objects are drawn. -> -> --Mark No copy the background pixmap to an internal pixmap once you've copied all the objects ontop of that internal pixmap then copy that pixmap to the screen. You only do on draw to the actual screen during an update. matt matt@cs.odu.edu From crossfire-request Wed Mar 16 19:02:04 1994 Return-Path: Received: from welch.ncd.com by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 19:02:00 +0100 Received: from hemlock.ncd.com (root@hemlock.ncd.com [138.43.112.23]) by welch.ncd.com (8.6.5/8.6.5) with ESMTP id KAA06321; Wed, 16 Mar 1994 10:00:13 -0800 Received: from localhost.ncd.com (lemke@localhost.ncd.com [127.0.0.1]) by hemlock.ncd.com (8.6.5/8.6.5.Beta11) with SMTP id KAA24080; Wed, 16 Mar 1994 10:00:02 -0800 Message-Id: <199403161800.KAA24080@hemlock.ncd.com> X-Authentication-Warning: hemlock.ncd.com: Host localhost.ncd.com didn't use HELO protocol To: Mark Wedel cc: philb@soda.berkeley.edu, crossfire@ifi.uio.no In-reply-to: Message from Mark Wedel of Tue, 15 Mar 1994 20:15:30 PST. Organization: Network Computing Devices, Mountain View, CA Reply-to: lemke@ncd.com Subject: Re: xpm slow? Date: Wed, 16 Mar 1994 10:00:02 PST From: Dave Lemke Status: RO From: Mark Wedel Date: Tue, 15 Mar 1994 20:15:30 -0800 One thought I've had about pixmap creation is to change the way they are initially read. Instead of calling the XpmCreatePixmapFromWherever function for all 2000 or so pixmaps, create a large montage of pixmaps (stored as something like crossfire.pix1, crossfire.pix2, etc.) These would be something like a montage 20x20, or 25x20. Exact size not really important, but it would be nice to be able to display them on one screen with sxpm, and an montage of all of them could really suck up a lot of memory in the load phase. Keeping these montages smaller solves that problem. you'll also hit limitations on low-end devices (PC and Xterminals) if you try to grab a huge contiguous chunk of memory. Then, when creating the pixmaps, the Xpm function only needs to be called once. XCopyArea could then be used to copy a section off the montage pixmap into the small pixmap (likewise, there would also be a montage of the pixmap clipmask). How crossfire does graphics right now is hardly what I call really optimized. A lot of improvements could probably be made. its a good idea. i think looking into the XPM code is also a good idea. i quickly scanned it, and it looks like you can pass in the pixmaps with actual pixel values, instead of color indices. if so, crossfire can pre-allocate the colors, munge the pixmap data, and then when they're loaded there's no AllocColor calls. From crossfire-request Wed Mar 16 15:36:59 1994 Return-Path: Received: from venla.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 15:36:57 +0100 Received: from localhost (hevi@localhost) by venla.it.lut.fi (8.6.5/8.6.5/1.12.kim) id QAA26201; Wed, 16 Mar 1994 16:36:54 +0200 Date: Wed, 16 Mar 1994 16:36:52 +0200 (EET) From: Petri Heinil{ Subject: Re: crossfire spoilers now on WWW To: crossfire@ifi.uio.no In-Reply-To: <9403161256.AA13218@diamond.cm.cf.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Wed, 16 Mar 1994, Simon McIntosh-Smith wrote: > A fully html'd version of the crossfire spoilers for version > 0.90.3 are now available at the Cardiff site: > > http://www.cm.cf.ac.uk:/Fun/ > > When I say fully html'd it's a bit of a lie, because the spoilers are > largely made up of tables, and the latex2html converter cheats with > tables by just turning them into inlined gifs. Oh well! Interestingly, Yep, waiting for the table feature to the html. Fetching the pages is quite slow to the Finland due the number of gif's. Otherwise it looks very good. btw. How about documenting overall in html ? Have everyone access ? (needs X and internet, which in case of crossfire is quite obvious). > the html version of the spoilers is less than 500Kbytes, while the > full postscript version is nearly 2Mbytes. This maybe for that the images are coded in postscript much more losely (in hexa-codes) than in gif:s. ///////////////////////// Petri Heinila ///////////////////////// email: Petri.Heinila@lut.fi www: Homepage mail: Ainonkatu 2A 53100 Lappeenranta Finland, Europe tel: (953) 574 3624 From crossfire-request Wed Mar 16 15:22:56 1994 Return-Path: Received: from yucca.cs.odu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 15:22:52 +0100 Received: from dew.cs.odu.edu (dew.cs.odu.edu [128.82.6.25]) by yucca.cs.odu.edu (8.6.4/8.6.4) with ESMTP id JAA05932 for ; Wed, 16 Mar 1994 09:25:15 -0500 From: Matthew Zeher Received: from localhost (matt@localhost) by dew.cs.odu.edu (8.6.4/8.6.4) id JAA10044; Wed, 16 Mar 1994 09:25:46 -0500 Date: Wed, 16 Mar 1994 09:25:46 -0500 Message-Id: <199403161425.JAA10044@dew.cs.odu.edu> To: crossfire@ifi.uio.no Subject: Re: xpm slow? In-Reply-To: <199403160415.AA19225@bolero.rahul.net> References: <199403160415.AA19225@bolero.rahul.net> Status: RO Mark Wedel writes: -> One thought I've had about pixmap creation is to change the way they -> are initially read. Sounds like a good idea. Another suggestion is to do something with background pixmaps. Right you have to draw both a background and foreground pixmap. But you don't redraw the background tile ( wall, floor, etc ) unless something above it has changed (because of the shape mask). What you could do is map all the background objects, onto a seperate pixmap. At the begining of the loop copy that entire pixmap to right on over the current map pixmap ( both of these pixmaps are internal and not mapped windows ). And then just throw down all the the rest of the object pixmaps that actually move ( creatures, players, fireballs ). Now just copy this entire pixmap striaght to the screen. This way you eliminate all of the background copys and replace it with on large background copy. Means an extra fairly large pixmap in memory for every map active but it will speed things up. Its certanly feasable for a client/server setup but it will consume much more memory if implemented under the current setup (especially if all the players are on different maps!! matt matt@cs.odu.edu From crossfire-request Wed Mar 16 13:56:35 1994 Return-Path: Received: from thrall.cm.cf.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 13:56:33 +0100 Received: from cm.cf.ac.uk by thrall.cm.cf.ac.uk with SMTP (PP) id <18890-0@thrall.cm.cf.ac.uk>; Wed, 16 Mar 1994 12:57:06 +0000 Date: Wed, 16 Mar 94 12:56:59 GMT From: Simon McIntosh-Smith Message-Id: <9403161256.AA13218@diamond.cm.cf.ac.uk> To: crossfire@ifi.uio.no Subject: crossfire spoilers now on WWW Status: RO A fully html'd version of the crossfire spoilers for version 0.90.3 are now available at the Cardiff site: http://www.cm.cf.ac.uk:/Fun/ When I say fully html'd it's a bit of a lie, because the spoilers are largely made up of tables, and the latex2html converter cheats with tables by just turning them into inlined gifs. Oh well! Interestingly, the html version of the spoilers is less than 500Kbytes, while the full postscript version is nearly 2Mbytes. Happy spoiling! Sy Full credit goes to Kjetil Torgrim Homme for superb assistance across the north sea late last night while I was trying to build the spoilers - nice one Kjetil! From crossfire-request Wed Mar 16 12:22:34 1994 Return-Path: Received: from kaisa.it.lut.fi by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 12:22:33 +0100 Received: from localhost (haatanen@localhost) by kaisa.it.lut.fi (8.6.5/8.6.5/1.12.kim) id NAA13263; Wed, 16 Mar 1994 13:22:32 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403161122.NAA13263@kaisa.it.lut.fi> Subject: Re: map contributions To: crossfire@ifi.uio.no Date: Wed, 16 Mar 94 13:22:31 EET In-Reply-To: <9403150741.AA04442@ceres.jsp.umontreal.ca>; from "Daniel Cote" at Mar 15, 94 2:41 am X-Mailer: ELM [version 2.3 PL11] Status: RO There are already has many good hints about making maps. Here are some more. First play the crossfire and see what kind of maps there already are and look the good sides about them. Before starting making your own maps, read doc/mapguide, it has many good advices. And always remember test all maps and let your friends test them also (they don't know all traps what you know :). And remember the plot. And one good building is better than empty town with big magic shop :). > I would like to do that. Just tell me what kinds you think are needed the > most, and I'll work on it. If you can draw you can always desing new bitmaps/pixmaps. I think these are always needed. You don't even worry about archetypes if you don't want, there is always someone who can make archetypes for them. And if you see somewhere bitmap and think that you can do better, just do it. BTW. I have got bank/graveyard code almost working and need badly different bitmaps, like different gravestones, crosses, monuments, coffins, (shovel and open grave, if making it little harder) and the unused grave square. Also different containers are also needed, like locked chest, pouch, quiver (sp?) and banks deposit boxes for coins. Most of these I could use 4 version, normal (i.e. closed and empty), open, full and close container version. Of course you don't see if chest is empty or not before opening it. I hope there is someone who could draw these, I'm hopeless what comes to drawing :(. If someone can help, drop me a mail. It would also make testing much easier. -Tero From crossfire-request Wed Mar 16 11:44:40 1994 Return-Path: Received: from lassie.eunet.fi by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 11:44:35 +0100 Received: from fireball.magic.fi (magic.fi) by lassie.eunet.fi with SMTP id AA10803 (5.67a/IDA-1.5 for ); Wed, 16 Mar 1994 12:44:32 +0200 Received: from guru.magic.fi by fireball.magic.fi (5.0/SMI-SVR4) id AA06067; Wed, 16 Mar 1994 12:41:49 --200 Message-Id: <9403161041.AA06067@fireball.magic.fi> To: crossfire@ifi.uio.no Subject: Re: xpm slow? In-Reply-To: Your message of "Tue, 15 Mar 1994 17:02:29 PST." <199403160102.RAA26959@soda.berkeley.edu> Date: Wed, 16 Mar 1994 12:45:38 +0200 From: Niilo Neuvo Content-Length: 2552 Status: RO We have been fighting over this in private mail to save bandwidth. I just happened to write such a long article that I decided to post this on the list. Philip Brown writes: >>>>>[From Niilo Neuvo] > step a) > translate pixmaps into a 'local format' > step b) > copy 'local format' with bcopy/memcpy to your 'huge' shm-pixmap > step c) > run shm-x-command to show the 'huge' pixmap on screen > >You weren't paying attention. I already posted that to the list , before >we started "conversing" :-> It is extremely difficult to remember who posted and what, with the amount of traffic the list has been getting. > I have not tried this on a 1 bit display, but I have tried this on a 8 > bit display. Speed increase was noticeable. Especially if you do > your own optimized (ignoring gc's) drawing operations (which is what > the bcopy/memcpy stuff was doing). > Do you have any figures to prove that you are correct? > > >I asked for figures in my post. > >SO anyways.. what exactly is your program doing, and what are you >comparing it to (exactly) > >You actually have two version of the same progam, but one uses the SHM >stuff, and one uses pixmaps diretly? Yes. #ifdefs to use shm or non shm approach. So I had two binaries and the only thing I was intrested in was the frame rate, when running the client locally and the server on another machine. This is what crossfire seems to be heading towards. It is a battlezone like game that I wrote 5 or 6 years ago for the sun 3/60's we had here. Last year I fixed the game a bit and added shm stuff for the double buffering instead of drawing into pixmaps and then copying them. I also fixed the gameplay so much that it would require a week or two of coding to get it working again :) The speed increase was quite noticeable, we are talking about 4x here. Some of the speedup does come from the fact that I use a customized bresenham line drawing algorithm that slightly cheats instead of using the standard Xlib calls (which wouldn't work for shm images anyhow). And yes, the original version (non shm) does keep the pixmap in the server, it does not send a 500x600 image over Xlib. I presume we could do a similar thing to optimize pixmaps on crossfire, especially if we use masks and things like that to make the game look a lot better. If not faster, at least just as fast as the fonts, but with good colour and masked graphics. I see no reason to use the shared memory on 1 bit displays. The amount of data to draw is so minimal. ++Anipa From crossfire-request Wed Mar 16 11:39:21 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 11:39:18 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Wed, 16 Mar 1994 10:39:04 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA27178; Wed, 16 Mar 94 10:35:33 GMT To: Mark Wedel Cc: crossfire@ifi.uio.no Subject: Re: map contributions In-Reply-To: Your message of "Tue, 15 Mar 1994 20:59:55 PST." <199403160459.AA21371@bolero.rahul.net> Date: Wed, 16 Mar 1994 10:40:54 +0000 Message-Id: <24229.763814454@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO I find the objects in the shops particularly annoying, because all the shop floor object generation tiles have a little square in the middle, which can totally obscure what's on it! (good example - look for diamonds in the gem shop in /city/city - they're the white blobs with a square outline!) Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Wed Mar 16 09:34:10 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 09:33:21 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id AAA17273 for crossfire@ifi.uio.no; Wed, 16 Mar 1994 00:32:58 -0800 From: Philip Brown Message-Id: <199403160832.AAA17273@soda.berkeley.edu> Subject: Re: xpm slow? To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Wed, 16 Mar 1994 00:32:56 -0800 (PST) In-Reply-To: <199403160457.AA21256@bolero.rahul.net> from "Mark Wedel" at Mar 15, 94 08:57:30 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 351 Status: RO >>>>[From Mark Wedel] Plus, the code for crossfire to load it would be a lot like the creation code, just in reverse. Yeah. If you really want to make separate pixmaps, its even easier than fiddling with all the separate xpm merges. Just use XCopyArea, and actually have something other than 0,0 for src_x and src_y parameters :-) From crossfire-request Wed Mar 16 06:36:01 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 06:35:21 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA14061; Wed, 16 Mar 1994 15:33:22 +1000 Date: Wed, 16 Mar 1994 15:33:22 +1000 From: "Rupert G. Goldie" Message-Id: <199403160533.AA14061@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, philb@soda.berkeley.edu, master@rahul.net Subject: Re: xpm slow? Status: RO > It shouldn't be too difficult to write a simple program that does > use the Xpm functions to read each xpm file, and then copy it onto the > montage pixmap, load another. Then, when that set of 500 (or whatever) > has been loaded, use one of the Xpm functions to save it. > > Plus, the code for crossfire to load it would be a lot like the creation > code, just in reverse. > > --Mark > You could hack something from the PBM library as it has programs to do exactly the kind of thing you want here. In fact with xpmtoppm and ppmtoxpm you don't need to code anything just pipe stuff to the appropriate program (pnmcat ?) Rupert From crossfire-request Wed Mar 16 06:13:36 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 06:13:35 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Wed, 16 Mar 1994 06:13:34 +0100 Date: Wed, 16 Mar 1994 06:13:34 +0100 Message-Id: <19940316051334.20353.bera.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: Mark Wedel's message of Tue, 15 Mar 1994 20:59:55 -0800 <199403160459.AA21371@bolero.rahul.net> Subject: Re: map contributions Status: RO +--- Mark Wedel: | I find that objects being hard to see depends both on the floor and | the object. I think most objects should have an outline of black or similar to set it apart. My new booze-bottle is a good example of what _I_ like :-) (will be in the next version). Keep in mind that the auto-coloured pixmaps are just a stop-gap. Kjetil T. From crossfire-request Wed Mar 16 06:02:52 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Wed, 16 Mar 1994 06:02:51 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Wed, 16 Mar 1994 06:02:51 +0100 Date: Wed, 16 Mar 1994 06:02:51 +0100 Message-Id: <19940316050251.20339.bera.ifi.uio.no@ifi.uio.no> To: philb@soda.berkeley.edu CC: crossfire@ifi.uio.no In-reply-to: Philip Brown's message of Tue, 15 Mar 1994 20:28:35 -0800 (PST) <199403160428.UAA21907@soda.berkeley.edu> Subject: Re: xpm slow? Status: RO +--- Philip Brown: | one thing that is rather NASTY is... how do you _create_ it? | that's a HUUUUGE file. completely unmanageable with pixmap, or | xpaint, or anything else. That's no problem - use pnmpaste for that matter. However, if you do this, much of the advantage of pixmaps is lost - that you can specify monochrome/grayscale colours. In many of my pixmaps, white in colour is rendered with _black_ in monochrome. Kjetil T. From crossfire-request Wed Mar 16 06:00:00 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 05:59:58 +0100 Received: by bolero.rahul.net id AA21371 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 15 Mar 1994 20:59:55 -0800 Date: Tue, 15 Mar 1994 20:59:55 -0800 From: Mark Wedel Message-Id: <199403160459.AA21371@bolero.rahul.net> To: crossfire@ifi.uio.no, eanders+@CMU.EDU Subject: Re: map contributions Status: RO I find that objects being hard to see depends both on the floor and the object. It could be said that it does make sense. If you drop a wood object on a wood floor, it isn't as noticeable. I think the biggest problem is with the objects colored extensively with khaki, as khaki is still used in a lot of the floors. As the floors get re-colored, things might become more visible. --Mark From crossfire-request Wed Mar 16 05:57:41 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 05:57:34 +0100 Received: by bolero.rahul.net id AA21256 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 15 Mar 1994 20:57:30 -0800 Date: Tue, 15 Mar 1994 20:57:30 -0800 From: Mark Wedel Message-Id: <199403160457.AA21256@bolero.rahul.net> To: crossfire@ifi.uio.no, philb@soda.berkeley.edu Subject: Re: xpm slow? Status: RO It shouldn't be too difficult to write a simple program that does use the Xpm functions to read each xpm file, and then copy it onto the montage pixmap, load another. Then, when that set of 500 (or whatever) has been loaded, use one of the Xpm functions to save it. Plus, the code for crossfire to load it would be a lot like the creation code, just in reverse. --Mark From crossfire-request Wed Mar 16 05:44:47 1994 Return-Path: Received: from po5.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 05:44:46 +0100 Received: from localhost (postman@localhost) by po5.andrew.cmu.edu (8.6.4/8.6.4) id XAA18618 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 23:44:43 -0500 Received: via switchmail; Tue, 15 Mar 1994 23:44:43 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 23:44:22 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 23:44:04 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Tue, 15 Mar 1994 23:43:58 -0500 (EST) Message-ID: <8hVcuCO00Zk2EdD2Ab@andrew.cmu.edu> Date: Tue, 15 Mar 1994 23:43:58 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: map contributions In-Reply-To: <199403160417.AA19300@bolero.rahul.net> References: <199403160417.AA19300@bolero.rahul.net> Status: RO Mark Wedel writes: > And now with XPM catching popularity, the only use of the color for > archetypes is in the magic mappign spell (for those that play with XPM) I both like and don't like the pixmaps. They are much "prettier" than the fonts, but most of the objects that fall on floors are now impossible to identify visually. Does anyone else have this problem? -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Wed Mar 16 05:28:53 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 05:28:50 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id UAA21907 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 20:28:37 -0800 From: Philip Brown Message-Id: <199403160428.UAA21907@soda.berkeley.edu> Subject: Re: xpm slow? To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Tue, 15 Mar 1994 20:28:35 -0800 (PST) In-Reply-To: <199403160415.AA19225@bolero.rahul.net> from "Mark Wedel" at Mar 15, 94 08:15:30 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 707 Status: RO >>>>[From Mark Wedel] Instead of calling the XpmCreatePixmapFromWherever function for all 2000 or so pixmaps, create a large montage of pixmaps (stored as something like crossfire.pix1, crossfire.pix2, etc.) "good" idea.. solves colormap problems, and a few other things.. one thing that is rather NASTY is... how do you _create_ it? that's a HUUUUGE file. completely unmanageable with pixmap, or xpaint, or anything else. You'd have to write a fairly intelligent routine to take a collection of pixmaps, and put them into a single xpm file. On the brighter side, once you HAVE the routine, you only have to distribute the "One True Pixmap", and then released will be nicely standard :-) From crossfire-request Wed Mar 16 05:17:47 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 05:17:43 +0100 Received: by bolero.rahul.net id AA19300 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 15 Mar 1994 20:17:38 -0800 Date: Tue, 15 Mar 1994 20:17:38 -0800 From: Mark Wedel Message-Id: <199403160417.AA19300@bolero.rahul.net> To: crossfire@ifi.uio.no, peterm@soda.berkeley.edu, rgg@aaii.oz.au Subject: Re: map contributions Status: RO The individual items being able to change the color of the faces I believe was originally added in one of the crossedit distributions, where the code split off from the main crossfire distribution. This ended up doing away with the colors.h file. And now with XPM catching popularity, the only use of the color for archetypes is in the magic mappign spell (for those that play with XPM) --Mark From crossfire-request Wed Mar 16 05:15:35 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 05:15:33 +0100 Received: by bolero.rahul.net id AA19225 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 15 Mar 1994 20:15:30 -0800 Date: Tue, 15 Mar 1994 20:15:30 -0800 From: Mark Wedel Message-Id: <199403160415.AA19225@bolero.rahul.net> To: lemke@ncd.com, philb@soda.berkeley.edu Subject: Re: xpm slow? Cc: crossfire@ifi.uio.no Status: RO One thought I've had about pixmap creation is to change the way they are initially read. Instead of calling the XpmCreatePixmapFromWherever function for all 2000 or so pixmaps, create a large montage of pixmaps (stored as something like crossfire.pix1, crossfire.pix2, etc.) These would be something like a montage 20x20, or 25x20. Exact size not really important, but it would be nice to be able to display them on one screen with sxpm, and an montage of all of them could really suck up a lot of memory in the load phase. Keeping these montages smaller solves that problem. Then, when creating the pixmaps, the Xpm function only needs to be called once. XCopyArea could then be used to copy a section off the montage pixmap into the small pixmap (likewise, there would also be a montage of the pixmap clipmask). How crossfire does graphics right now is hardly what I call really optimized. A lot of improvements could probably be made. --Mark From crossfire-request Wed Mar 16 01:49:55 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 01:49:29 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA09391; Wed, 16 Mar 1994 10:46:03 +1000 Date: Wed, 16 Mar 1994 10:46:03 +1000 From: "Rupert G. Goldie" Message-Id: <199403160046.AA09391@eden-valley.aaii.oz.AU> To: peterm@soda.berkeley.edu, crossfire@ifi.uio.no Subject: Re: map contributions Status: RO > >Change color foreground/background to look different, make lava...blue and > >white..suddenly, you have a frozen river like thing that hurts when you > >walk on it. > > I didn't have much success with this trick in pixmap mode. The color > of the pixmap apparently overrides the color that you specify in the > color_fg or color_bg fields. Pixmaps are nice, but they destroy > a lot of my favorite tricks! > I wanted to use this trick a while ago, but with 0.89 and earlier it wasn't possible to change the colour of an individual object (even with fonts). Did this change in one of the recent versions. Rupert From crossfire-request Wed Mar 16 01:47:36 1994 Return-Path: Received: from welch.ncd.com by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Wed, 16 Mar 1994 01:47:32 +0100 Received: from hemlock.ncd.com (root@hemlock.ncd.com [138.43.112.23]) by welch.ncd.com (8.6.5/8.6.5) with ESMTP id QAA12401; Tue, 15 Mar 1994 16:45:23 -0800 Received: from localhost.ncd.com (lemke@localhost.ncd.com [127.0.0.1]) by hemlock.ncd.com (8.6.5/8.6.5.Beta11) with SMTP id QAA02651; Tue, 15 Mar 1994 16:45:22 -0800 Message-Id: <199403160045.QAA02651@hemlock.ncd.com> X-Authentication-Warning: hemlock.ncd.com: Host localhost.ncd.com didn't use HELO protocol To: Philip Brown cc: crossfire@ifi.uio.no (Crossfire Mailing List) In-reply-to: Message from Philip Brown of Mon, 14 Mar 1994 21:55:10 PST. Organization: Network Computing Devices, Mountain View, CA Reply-to: lemke@ncd.com Subject: Re: xpm slow? Date: Tue, 15 Mar 1994 16:45:21 PST From: Dave Lemke Status: RO From: Philip Brown Date: Mon, 14 Mar 1994 21:55:10 -0800 (PST) >>>>[From Eric A. Anderson] Mark Wedel writes: > However, with client server, this should not be a problem. My guess is with client server it will still be a little problem. My roomate commented that pixmaps seemed to make things slower. I agreed with him. This was over a local connection -- e.g. the crossfire server and the X server on the same machine. I disagree. The reason pixmaps are slow is because of X overhead. the reason fonts ar quicker is because of font mechanisms to reduce X overhead. i've been looking a bit at what's going on with the XPM stuff (using xscope, which is an invaluable tool for doing X performance analysis). i see a number of issues: - the pixmap creation itself is really dumb. i think this is the XPM library's fault, but the game is re-allocating the colors for each pixmap. that's probably more than 2000 extra times for figuring out what 'black' looks like. startup time could be *much* faster - the display code uses CopyArea, but doesn't turn off graohics exposures. this means that for every call to CopyArea, there's a NoExpose event coming back from the server. extra work for both sides, and its thrown on the floor. this is a trivial fix, and will also speed up bitmaps. - the display code sets the clip a lot -- but often the clip is the same as what it already is (nothing). i tweaked this and cut down some more on the number of packets going over the wire. its not obvious whether these last two changes made it faster (it was already nice for me) but they certainly cut down on the wire traffic. and in the font vs pixmap category, fonts are probably going to be faster, simply because server vendors optimize them better. some displays also stick pixmaps in different memory, and it can take longer to get them out. Dave here are the diffs if people want to try them -- i may have screwed up the clipmask stuff, though i haven't seen any visual glitches. *** xio.c Tue Mar 15 16:24:30 1994 --- ../../tmp/crossfire-0.90.3/server/xio.c Fri Mar 11 19:43:31 1994 *************** *** 247,253 **** XSetForeground(p->gdisp,p->gc_game,p->gforeground); XSetBackground(p->gdisp,p->gc_game,p->gbackground); } - XSetGraphicsExposures(p->gdisp, p->gc_game, False); if(!p->use_pixmaps) { p->game_font=p->font=XLoadFont(p->gdisp,font_graphic); XSetFont(p->gdisp,p->gc_game,p->font); --- 247,252 ---- *************** *** 255,262 **** if (p->color_pixmaps) { p->gc_xpm_floor = XCreateGC(p->gdisp,p->win_game,0,0); p->gc_xpm_object = XCreateGC(p->gdisp,p->win_game,0,0); - XSetGraphicsExposures(p->gdisp, p->gc_xpm_floor, False); - XSetGraphicsExposures(p->gdisp, p->gc_xpm_object, False); XSetClipOrigin(p->gdisp, p->gc_xpm_object, 0, 0); p->xpm_pixmap = XCreatePixmap(p->gdisp, RootWindow(p->gdisp, --- 254,259 ---- *************** *** 2159,2165 **** void draw_color_pix(object *pl) { int i,j,ax,ay; /* ax and ay goes from 0 to max-size of arrays */ Face *face,*floor; - static Pixmap obj_mask = 0; for(j=pl->y+WINUPPER;j<=pl->y+WINLOWER;j++) { ay=j-pl->y-WINUPPER; --- 2156,2161 ---- *************** *** 2198,2208 **** XCopyArea(pl->contr->gdisp, pl->contr->pixmaps[floor->number], pl->contr->xpm_pixmap, pl->contr->gc_xpm_floor, 0, 0, 24, 24, 0, 0); - if (obj_mask != pl->contr->masks[face->number]) { XSetClipMask(pl->contr->gdisp, pl->contr->gc_xpm_object, pl->contr->masks[face->number]); - obj_mask = pl->contr->masks[face->number]; - } XCopyArea(pl->contr->gdisp,pl->contr->pixmaps[face->number], pl->contr->xpm_pixmap,pl->contr->gc_xpm_object, 0,0,24,24,0, 0); --- 2194,2201 ---- *************** *** 2219,2229 **** pl->contr->xpm_pixmap,pl->contr->gc_xpm_floor, 0,0,24,24,0,0); if (face->number != floor->number) { - if (obj_mask != pl->contr->masks[face->number]) { XSetClipMask(pl->contr->gdisp, pl->contr->gc_xpm_object, pl->contr->masks[face->number]); - obj_mask = pl->contr->masks[face->number]; - } XCopyArea(pl->contr->gdisp,pl->contr->pixmaps[face->number], pl->contr->xpm_pixmap,pl->contr->gc_xpm_object, 0,0,24,24,0,0); --- 2212,2219 ---- From crossfire-request Tue Mar 15 23:37:43 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 23:37:41 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id OAA07767 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 14:37:39 -0800 From: Philip Brown Message-Id: <199403152237.OAA07767@soda.berkeley.edu> Subject: Re: xpm slow? To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Tue, 15 Mar 1994 14:37:37 -0800 (PST) In-Reply-To: <9403151410.AA05673@fireball.magic.fi> from "Niilo Neuvo" at Mar 15, 94 04:14:20 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 766 Status: RO >>>>[From Niilo Neuvo] There is no way you can draw a font character faster than using a fixed size pixmap with memcpy/bcopy. Drawing isn't actually the issue that was being discussed. Assuming you have a pixmap the same depth/size as a given font character... If you are drawing ONE, basically the same thing is involved: you send the font or pixmap identifier, along with a whole bunch of X padding. This is true whether you are drawing over the net, or to your own machine. On the other hand, if you are drawing MULTIPLE pictures, for pixmaps, you have to send a separate set of padding for each pixmap. whereas if it is all on one horizontal line, you can tell X padding:font_string:padding once. Which makes fonts faster in that sense. From crossfire-request Tue Mar 15 21:43:49 1994 Return-Path: Received: from ursula.ee.pdx.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 21:43:44 +0100 Received: from potrzebie.ee.pdx.edu by ursula.ee.pdx.edu (4.1/SMI-4.1) id AA19759; Tue, 15 Mar 94 12:34:50 PST From: bairds@ee.pdx.edu (Scarrow) Message-Id: <9403152034.AA19759@ursula.ee.pdx.edu> Subject: Re: Crossfire 0.90.3 is released To: eanders+@CMU.EDU (Eric A. Anderson) Date: Tue, 15 Mar 1994 12:34:52 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: <8hVV3=_00Zk20dD_oT@andrew.cmu.edu> from "Eric A. Anderson" at Mar 15, 94 02:47:23 pm X-Mailer: ELM [version 2.4 PL23beta] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 366 Status: RO > Alternately, you can just telnet to the crossfire port on any of the > various machines that run servers, such as madhatter.ws.cc.cmu.edu It might be a good idea to set up a metaserver sometime. Does anyone maintain a list of publically accessible crossfire servers? One of these days a switch to a client/server model is going to be dreadfully neccesary too. From crossfire-request Tue Mar 15 21:09:12 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Tue, 15 Mar 1994 21:08:55 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id MAA07223; Tue, 15 Mar 1994 12:08:42 -0800 From: Tyler Van Gorder Message-Id: <199403152008.MAA07223@corpse.ecst.csuchico.edu> Subject: Re: map contributions To: peterm@soda.berkeley.edu (Peter Mardahl) Date: Tue, 15 Mar 1994 12:08:41 -0800 (PST) Cc: kjetilho@ifi.uio.no, tvangod@ecst.csuchico.edu, crossfire@ifi.uio.no In-Reply-To: <199403150913.BAA03232@soda.berkeley.edu> from "Peter Mardahl" at Mar 15, 94 01:13:03 am X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1018 Status: RO > >Change color foreground/background to look different, make lava...blue and > >white..suddenly, you have a frozen river like thing that hurts when you > >walk on it. > > I didn't have much success with this trick in pixmap mode. The color > of the pixmap apparently overrides the color that you specify in the > color_fg or color_bg fields. Pixmaps are nice, but they destroy > a lot of my favorite tricks! Yes, you do lose the ability to change colors of objects from map to map..which is a shame :< > > > >Change what a pearl converter does..change the name/face. Then when a player > >drops a corpse then...drops 10000 gold on a converter..and it > >creates a rune of resurrect......and presto..... > > That's an interesting thought, have you given it a shot, Tyler? > no actually haven't tryed it yet :> hopefully soon. > > P.S., when is corpse coming back? Is it coming back? > > yes, i will bring it back up...when i get some time.....the last two weeks have been way to busy :< Tyler. From crossfire-request Tue Mar 15 20:47:55 1994 Return-Path: Received: from po2.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 20:47:54 +0100 Received: from localhost (postman@localhost) by po2.andrew.cmu.edu (8.6.4/8.6.4) id OAA12348 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 14:47:46 -0500 Received: via switchmail; Tue, 15 Mar 1994 14:47:44 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 14:47:34 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 14:47:23 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Tue, 15 Mar 1994 14:47:23 -0500 (EST) Message-ID: <8hVV3=_00Zk20dD_oT@andrew.cmu.edu> Date: Tue, 15 Mar 1994 14:47:23 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: Crossfire 0.90.3 is released In-Reply-To: <199403151839.KAA13772@hemlock.ncd.com> References: <199403151839.KAA13772@hemlock.ncd.com> Status: RO Try ifi.uio.no pub/crossfire -- Alternately, you can just telnet to the crossfire port on any of the various machines that run servers, such as madhatter.ws.cc.cmu.edu -- Note to developers: We should really create a perl script or shell script that will add someone to the game. They'd be able to get a feel for what crossfire is like before they go to the trouble of compiling it. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Tue Mar 15 19:40:05 1994 Return-Path: Received: from welch.ncd.com by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 19:40:03 +0100 Received: from hemlock.ncd.com (root@hemlock.ncd.com [138.43.112.23]) by welch.ncd.com (8.6.5/8.6.5) with ESMTP id KAA20462 for ; Tue, 15 Mar 1994 10:40:00 -0800 Received: from localhost.ncd.com (lemke@localhost.ncd.com [127.0.0.1]) by hemlock.ncd.com (8.6.5/8.6.5.Beta11) with SMTP id KAA13772 for ; Tue, 15 Mar 1994 10:39:58 -0800 Message-Id: <199403151839.KAA13772@hemlock.ncd.com> X-Authentication-Warning: hemlock.ncd.com: Host localhost.ncd.com didn't use HELO protocol To: Crossfire discussion list In-reply-to: Message from Mark Wedel of Sat, 12 Mar 1994 06:48:32 +0100. Organization: Network Computing Devices, Mountain View, CA Reply-to: lemke@ncd.com Subject: Re: Crossfire 0.90.3 is released Date: Tue, 15 Mar 1994 10:39:57 PST From: Dave Lemke Status: RO a silly question -- i haven't played with crossfire since 0.89, and wanted to look at it today. but the 0.90.3 announcement doesn't mention an ftp site... Dave From crossfire-request Tue Mar 15 18:04:15 1994 Return-Path: Received: from yucca.cs.odu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 18:04:08 +0100 Received: from drizzle.cs.odu.edu (drizzle.cs.odu.edu [128.82.6.13]) by yucca.cs.odu.edu (8.6.4/8.6.4) with ESMTP id MAA25014 for ; Tue, 15 Mar 1994 12:06:10 -0500 From: Matthew Zeher Received: from localhost (matt@localhost) by drizzle.cs.odu.edu (8.6.4/8.6.4) id MAA00255; Tue, 15 Mar 1994 12:06:40 -0500 Date: Tue, 15 Mar 1994 12:06:40 -0500 Message-Id: <199403151706.MAA00255@drizzle.cs.odu.edu> To: crossfire@ifi.uio.no Subject: Re: xpm slow? In-Reply-To: <9403151410.AA05673@fireball.magic.fi> References: <199403150809.AAA25123@soda.berkeley.edu> <9403151410.AA05673@fireball.magic.fi> Status: RO Using Xpm over fonts does not neccessarily have to produce slow down. It just so happens that X can treat fonts differently than it can treat images. If we were to optimize the xpm code a little more I know we could get it nearly as fast as fonts and deffinatly playable. Awile back, I worked on a multi-player gauntlet type game it used the Xpm libraaries so it was fully graphical. It was client/server allowing multiple players. The graphics screen was also 600x600 the graphics animated and were clipped using shapes. I achieved refreshes of about 5-10 frames per second and my bottleneck was in the client/server communication not the graphics display. Now I did some optimization of the way I displaed things but the same is possiable for crossfire. To assume that using a fully color graphical map display for crossfire will make less playable is not true. The code is just not fully optimized yet. matt matt@cs.odu.edu From crossfire-request Tue Mar 15 15:13:26 1994 Return-Path: Received: from lassie.eunet.fi by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 15:13:24 +0100 Received: from fireball.magic.fi (magic.fi) by lassie.eunet.fi with SMTP id AA29760 (5.67a/IDA-1.5 for ); Tue, 15 Mar 1994 16:13:22 +0200 Received: from guru.magic.fi by fireball.magic.fi (5.0/SMI-SVR4) id AA05673; Tue, 15 Mar 1994 16:10:31 --200 Message-Id: <9403151410.AA05673@fireball.magic.fi> To: Philip Brown Cc: crossfire@ifi.uio.no (Crossfire Mailing List) Subject: Re: xpm slow? In-Reply-To: Your message of "Tue, 15 Mar 1994 00:09:15 PST." <199403150809.AAA25123@soda.berkeley.edu> Date: Tue, 15 Mar 1994 16:14:20 +0200 From: Niilo Neuvo Content-Length: 1593 Status: RO Philip Brown writes: >On the other hand, removing the bandwidth drag from the server handling >multiple player X updates should help bunches. > >On my sparc _1_, running the old crossfire server in single-user mode >pixmaps was acceptable. Slower than fonts, yeah. but we should be able to >compe up with something. > > Can we make it as fast as fonts? No. > >You're neglecting the fact that we can do strange MIT-SHM stuff with >local clients!! There is no way you can draw a font character faster than using a fixed size pixmap with memcpy/bcopy. Assuming you don't have hardware that is specialized in fonts, in which case your graphics probably are fast enough to run crossfire anyhow. >Well, okay, I know that doesn't help much when you have the pixmaps already >defined. it helps most for defining the pixmaps. But there's gotta be >tricks you can use , if you have a GUARANTEED local client. Actually it does help. We know that we don't have to worry about clipping, gc's and all the other X stuff. >Being limited to fonts of depth 1 just is too sucky for words. Must agree here too. >Perhaps someone should write an X program to compare speeds of >the following things: > >refreshing a 10x10 pixmap grid each update > VS >using MIT-SHM to draw into a single large pixmap, and blasting that each >update. >Any volunteers? MIT-SHM handling is definately NOT my strong point. If someone writes the client/server split and does the standard Xlib pixmap drawing, I can add the MIT-SHM handling. This can be an option that is only used if you are running X locally. ++Anipa From crossfire-request Tue Mar 15 12:15:17 1994 Return-Path: Received: from thrall.cm.cf.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 12:15:16 +0100 Received: from cm.cf.ac.uk by thrall.cm.cf.ac.uk with SMTP (PP) id <00309-0@thrall.cm.cf.ac.uk>; Tue, 15 Mar 1994 11:16:45 +0000 Date: Tue, 15 Mar 94 11:16:42 GMT From: Simon McIntosh-Smith Message-Id: <9403151116.AA05486@diamond.cm.cf.ac.uk> To: crossfire@ifi.uio.no Subject: Re: xpm slow? Status: RO > >>>>[From Nick Williams] > > For any who doubt that X is fast enough, just get xmris from > ftp.x.org:/contrib, compile it up and have a go... > > I like acm myself.. but it takes a gx board on my sparc 1 to make it > playable :-/ Oh man - you should see it on our Sparc IPXs (Sparc 2's with 32 MB RAM) it really flies, if you'll pardon the pun! What kills it is network speed, which is the problem crossfire also has, but the problem that xmris avoids by being only a 1 player game ;-) Sy PS spoilers should be available on the WWW by the end of the day, thanks to lots of help from Kjetil Homme himself. Check out http://www.cm.cf.ac.uk:/Fun/ later in the day for the spoilers in html form... From crossfire-request Tue Mar 15 11:22:34 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 11:22:28 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id CAA13188; Tue, 15 Mar 1994 02:22:16 -0800 From: Philip Brown Message-Id: <199403151022.CAA13188@soda.berkeley.edu> Subject: Re: xpm slow? To: njw@cs.city.ac.uk (Nick Williams) Date: Tue, 15 Mar 1994 02:22:14 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: from "Nick Williams" at Mar 15, 94 09:41:42 am X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 420 Status: RO >>>>[From Nick Williams] For any who doubt that X is fast enough, just get xmris from ftp.x.org:/contrib, compile it up and have a go... Ironically, that's not SUCH a good idea.. the OLD version of the code runs better on my sparc 1 than the newer version :-) ANd its slightly overkill, what with its special handling. I like acm myself.. but it takes a gx board on my sparc 1 to make it playable :-/ From crossfire-request Tue Mar 15 10:43:06 1994 Return-Path: Received: from barney.cs.city.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 10:43:02 +0100 Received: from wilma.cs.city.ac.uk by barney.cs.city.ac.uk; Tue, 15 Mar 1994 09:46:45 GMT Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.wilma.cs.city.ac.uk.sun4.41 via MS.5.6.wilma.cs.city.ac.uk.sun4_41; Tue, 15 Mar 1994 09:41:42 +0000 (GMT) Message-Id: Date: Tue, 15 Mar 1994 09:41:42 +0000 (GMT) From: Nick Williams Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII To: crossfire@ifi.uio.no (Crossfire Mailing List), Philip Brown Subject: Re: xpm slow? In-Reply-To: <199403150809.AAA25123@soda.berkeley.edu> References: <199403150809.AAA25123@soda.berkeley.edu> Status: RO A 2cents worth comment: I don't know that much about X programming, however I know it's not impossible to get good performance out of displaying graphics. You just need to look at other games such as xmris (uses internal RGB structures, as opposed to XPMs) or xboing (uses XPMs) both of which provide good animation. xmris *definitely* shows off that X *can* be used to write games in: it's graphics & animations are brilliantly just like the arcade game.... For any who doubt that X is fast enough, just get xmris from ftp.x.org:/contrib, compile it up and have a go... Nick Williams, Systems Architecture Research Centre, City University, London, EC1V 0HB. UK. Web: http://web.cs.city.ac.uk/finger?njw E-mail: njw@cs.city.ac.uk (MIME and ATK) Work Telephone: +44 71 477 8551 Work Fax: +44 71 477 8587 From crossfire-request Tue Mar 15 10:13:10 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Tue, 15 Mar 1994 10:13:08 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id BAA03232; Tue, 15 Mar 1994 01:13:03 -0800 Date: Tue, 15 Mar 1994 01:13:03 -0800 From: Peter Mardahl Message-Id: <199403150913.BAA03232@soda.berkeley.edu> To: kjetilho@ifi.uio.no, tvangod@ecst.csuchico.edu Subject: Re: map contributions Cc: crossfire@ifi.uio.no Status: RO >Change the face of an altar to look like something else....ei (table in >goth's tavern..........put down a booze and the dude opens up the basement >for you. That's a cool idea. I never spent very much time in that tavern so I never figured this out! >Change color foreground/background to look different, make lava...blue and >white..suddenly, you have a frozen river like thing that hurts when you >walk on it. I didn't have much success with this trick in pixmap mode. The color of the pixmap apparently overrides the color that you specify in the color_fg or color_bg fields. Pixmaps are nice, but they destroy a lot of my favorite tricks! >Change what a pearl converter does..change the name/face. Then when a player >drops a corpse then...drops 10000 gold on a converter..and it >creates a rune of resurrect......and presto..... That's an interesting thought, have you given it a shot, Tyler? PeterM P.S., when is corpse coming back? Is it coming back? From crossfire-request Tue Mar 15 09:51:30 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id ; Tue, 15 Mar 1994 09:51:26 +0100 Received: from localhost (tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.4/8.6.4) id AAA03530; Tue, 15 Mar 1994 00:51:19 -0800 From: Tyler Van Gorder Message-Id: <199403150851.AAA03530@corpse.ecst.csuchico.edu> Subject: Re: map contributions To: kjetilho@ifi.uio.no (Kjetil Torgrim Homme) Date: Tue, 15 Mar 1994 00:51:19 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: <19940315075922.4843.bera.ifi.uio.no@ifi.uio.no> from "Kjetil Torgrim Homme" at Mar 15, 94 08:59:22 am X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1165 Status: RO A couple of cool things you can do with crossedit: Change the face of an altar to look like something else....ei (table in goth's tavern..........put down a booze and the dude opens up the basement for you. Change color foreground/background to look different, make lava...blue and white..suddenly, you have a frozen river like thing that hurts when you walk on it. Change the face of things to make them look different... ei (The mountains, on the pirate island quest, are actually locked doors that had their face changed....and likewise the "shovel" is the corresponding key, made to look like a shovel :> Magic mouths not connected to anything..can act as an NPC...(gatehouse)... the guard is on the inside of the gatehouse....and thus you are really talking too the second of two magic mouths on your side of the gatehouse. The first just matches the password and connects to the gate....the other answers misc queries. Change what a pearl converter does..change the name/face. Then when a player drops a corpse then...drops 10000 gold on a converter..and it creates a rune of resurrect......and presto..... Just some thoughts i've had :> Tyler. From crossfire-request Tue Mar 15 09:09:23 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 09:09:22 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.7/PHILMAIL-1.10) id AAA25123 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 00:09:17 -0800 From: Philip Brown Message-Id: <199403150809.AAA25123@soda.berkeley.edu> Subject: Re: xpm slow? To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Tue, 15 Mar 1994 00:09:15 -0800 (PST) In-Reply-To: <4hVKJFi00Zk2EdD2lE@andrew.cmu.edu> from "Eric A. Anderson" at Mar 15, 94 02:35:45 am X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 1775 Status: RO >>>>[From Eric A. Anderson] Philip Brown writes: > I disagree. The reason pixmaps are slow is because of X overhead. > the reason fonts ar quicker is because of font mechanisms to reduce X > overhead. > With client/server models, there wil be NO X overhead. hence no problem. All client/server will buy you is not having the X stuff running over long-haul networks; you'll still be doing X stuff to the local machine, which should have about the same performance as running crossfire and displaying it on the same machine. Yes and no. You're neglecting the fact that almost any machine made & designed in the last ten years should be able to handle blitting pixmaps to the screen fast enough to be acceptable to crossfire play. On the other hand, removing the bandwidth drag from the server handling multiple player X updates should help bunches. On my sparc _1_, running the old crossfire server in single-user mode pixmaps was acceptable. Slower than fonts, yeah. but we should be able to compe up with something. Can we make it as fast as fonts? No. You're neglecting the fact that we can do strange MIT-SHM stuff with local clients!! Well, okay, I know that doesn't help much when you have the pixmaps already defined. it helps most for defining the pixmaps. But there's gotta be tricks you can use , if you have a GUARANTEED local client. Being limited to fonts of depth 1 just is too sucky for words. Perhaps someone should write an X program to compare speeds of the following things: refreshing a 10x10 pixmap grid each update VS using MIT-SHM to draw into a single large pixmap, and blasting that each update. Any volunteers? MIT-SHM handling is definately NOT my strong point. From crossfire-request Tue Mar 15 08:59:24 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 08:59:23 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Tue, 15 Mar 1994 08:59:22 +0100 Date: Tue, 15 Mar 1994 08:59:22 +0100 Message-Id: <19940315075922.4843.bera.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: Daniel Cote's message of Tue, 15 Mar 1994 02:41:32 -0500 <9403150741.AA04442@ceres.jsp.umontreal.ca> Subject: Re: map contributions Status: RO Well, you should get crossedit up and running, and study some of the maps which use some of the more advanced features, e.g. lib/map/city/misc/gatehouse is a good example of how NPC's and buttons can respond to the player saying things. Experiment with changing the variables in objects. You can change just about anything - you can make boulders which look like chests, for example, by changing the value of the variable "face". The best reference we've got for the variables is in doc/crossfire.doc. Much of this will be cryptic at first! Experiment, and you'll get the hang of it. > Just tell me what kinds you think are needed the most, and I'll work > on it. I want maps with a _story_ not just mindless bashing. A quest ;-) Good luck! Kjetil T. From crossfire-request Tue Mar 15 08:41:19 1994 Return-Path: Received: from condor.CC.UMontreal.CA by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 08:41:17 +0100 Received: from aster.JSP.UMontreal.CA by condor.CC.UMontreal.CA with SMTP id AA27344 (5.65c/IDA-1.4.4 for crossfire@ifi.uio.no); Tue, 15 Mar 1994 02:41:06 -0500 Received: from ceres.jsp.umontreal.ca by aster.jsp.umontreal.ca (920330.SGI/5.17) id AA24242; Tue, 15 Mar 94 02:41:01 -0500 Received: by ceres.jsp.umontreal.ca (920330.SGI/5.17) id AA04442; Tue, 15 Mar 94 02:41:33 -0500 Message-Id: <9403150741.AA04442@ceres.jsp.umontreal.ca> From: casino@JSP.UMontreal.CA (Daniel Cote) Date: Tue, 15 Mar 1994 02:41:32 -0500 X-Mailer: Mail User's Shell (JSP Hacked Version) (7.2.5 10/14/92) To: crossfire@ifi.uio.no Subject: map contributions Status: RO I remember someone suggested that if we want to help in the developement even if we can't code, we should think to design new maps and/or archetypes. I would like to do that. Just tell me what kinds you think are needed the most, and I'll work on it. Daniel PS: Hoping I can get crossfire and crossedit to compile correctly :-| From crossfire-request Tue Mar 15 18:41:05 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 18:41:03 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA27458; Tue, 15 Mar 1994 12:37:52 +0500 Date: Tue, 15 Mar 1994 12:37:52 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403151737.AA27458@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Poison and deaht? Content-Length: 647 Status: RO It appears I am no longer poisoned after death... However, after being attacked by Xan's my strength went from 20 to 16... When I died, it was around 12, and jumped back to 16 after a few mins. It's at 16 for good now... My only though is e (opps sorry) My only thought is that the Xan's poison never restored my strength, because after dying, the poison was 'gone', and so it was never 'healed' to restore my strength? Even if this sin't the case, its something to keep in mind.. If poison goes away at death, don't forget to restore all poision inflected attribute changes at death as well.... (My poor warrior. He's so weak now. Alas. ) From crossfire-request Tue Mar 15 08:36:16 1994 Return-Path: Received: from po5.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 08:36:12 +0100 Received: from localhost (postman@localhost) by po5.andrew.cmu.edu (8.6.4/8.6.4) id CAA24227 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 02:36:10 -0500 Received: via switchmail; Tue, 15 Mar 1994 02:36:10 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 02:35:47 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 02:35:45 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Tue, 15 Mar 1994 02:35:45 -0500 (EST) Message-ID: <4hVKJFi00Zk2EdD2lE@andrew.cmu.edu> Date: Tue, 15 Mar 1994 02:35:45 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: xpm slow? In-Reply-To: <199403150555.VAA06278@soda.berkeley.edu> References: <199403150555.VAA06278@soda.berkeley.edu> Status: RO Philip Brown writes: > I disagree. The reason pixmaps are slow is because of X overhead. > the reason fonts ar quicker is because of font mechanisms to reduce X > overhead. > With client/server models, there wil be NO X overhead. hence no problem. All client/server will buy you is not having the X stuff running over long-haul networks; you'll still be doing X stuff to the local machine, which should have about the same performance as running crossfire and displaying it on the same machine. -- One substantial slowdown to xpm stuff is the fact that it draws multiple objects in a pile instead of just drawing the top object. This will cause it to be slower than fonts. -- Can we make it as fast as fonts? No. Can we make it close? We'll need to check. It just feels slower, and this is on a relatively fast X machine (sparc2 w/gx) -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Tue Mar 15 07:00:14 1994 Return-Path: Received: from bera.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 07:00:14 +0100 From: Kjetil Torgrim Homme Received: from localhost by bera.ifi.uio.no ; Tue, 15 Mar 1994 07:00:13 +0100 Date: Tue, 15 Mar 1994 07:00:13 +0100 Message-Id: <19940315060013.4056.bera.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: "Eric A. Anderson"'s message of Tue, 15 Mar 1994 00:12:19 -0500 (EST) Subject: Re: xpm slow? Status: RO +--- Eric A. Anderson: | My roomate commented that pixmaps seemed to make things slower. I | agreed with him. This was over a local connection -- e.g. the | crossfire server and the X server on the same machine. Now, this shouldn't come as a surprise. If you use pixmaps, you must send at least 4 times the information to update one square compared to fonts. In addition, fonts are much better for updating whole lines. +--- Philip Brown: | I disagree. The reason pixmaps are slow is because of X overhead. | the reason fonts ar quicker is because of font mechanisms to reduce | X overhead. With client/server models, there wil be NO X | overhead. hence no problem. You assume that the limiting factor is bandwidth. Many of us have slow monochrome X servers which can't really keep up even when running locally. So, to get fancy technicolour, you need a reasonably modern machine (more than ~50k Xstones). What else is new? :-) Kjetil T. From crossfire-request Tue Mar 15 06:55:17 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 06:55:14 +0100 Received: from localhost (philb@localhost) by soda.berkeley.edu (8.6.5/PHILMAIL-1.10) id VAA06278 for crossfire@ifi.uio.no; Mon, 14 Mar 1994 21:55:12 -0800 From: Philip Brown Message-Id: <199403150555.VAA06278@soda.berkeley.edu> Subject: Re: xpm slow? To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Mon, 14 Mar 1994 21:55:10 -0800 (PST) In-Reply-To: from "Eric A. Anderson" at Mar 15, 94 00:12:19 am X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 632 Status: RO >>>>[From Eric A. Anderson] Mark Wedel writes: > However, with client server, this should not be a problem. My guess is with client server it will still be a little problem. My roomate commented that pixmaps seemed to make things slower. I agreed with him. This was over a local connection -- e.g. the crossfire server and the X server on the same machine. I disagree. The reason pixmaps are slow is because of X overhead. the reason fonts ar quicker is because of font mechanisms to reduce X overhead. With client/server models, there wil be NO X overhead. hence no problem. From crossfire-request Tue Mar 15 06:13:51 1994 Return-Path: Received: from po3.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 06:13:49 +0100 Received: from localhost (postman@localhost) by po3.andrew.cmu.edu (8.6.4/8.6.4) id AAA24041 for crossfire@ifi.uio.no; Tue, 15 Mar 1994 00:13:45 -0500 Received: via switchmail; Tue, 15 Mar 1994 00:13:44 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 00:12:27 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Tue, 15 Mar 1994 00:12:22 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Tue, 15 Mar 1994 00:12:19 -0500 (EST) Message-ID: Date: Tue, 15 Mar 1994 00:12:19 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: xpm slow? In-Reply-To: <199403131026.AA18110@bolero.rahul.net> References: <199403131026.AA18110@bolero.rahul.net> Status: RO Mark Wedel writes: > However, with client server, this should not be a problem. My guess is with client server it will still be a little problem. My roomate commented that pixmaps seemed to make things slower. I agreed with him. This was over a local connection -- e.g. the crossfire server and the X server on the same machine. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Tue Mar 15 04:10:41 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 04:10:39 +0100 Received: by bolero.rahul.net id AA28940 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 14 Mar 1994 19:10:36 -0800 Date: Mon, 14 Mar 1994 19:10:36 -0800 From: Mark Wedel Message-Id: <199403150310.AA28940@bolero.rahul.net> To: crossfire@ifi.uio.no, mhokkane@ua.d.umn.edu Subject: Re: save game Status: RO A few notes: If you installed crossfire with a user id that is different than the one your run it from, one of the following will need to be done: The players directory will need to have permissions for the uid you play under, or 2) the program will need to be run setuid or setgid. For example, if you installed the game under root, but play under your own account, it will not have permissions to save in the player directory. --Mark From crossfire-request Tue Mar 15 01:52:02 1994 Return-Path: Received: from ua.d.umn.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Tue, 15 Mar 1994 01:51:57 +0100 From: mhokkane@ua.d.umn.edu Received: from mwah177sc.d.umn.edu by ua.d.umn.edu with SMTP id AA10620 (5.65c/IDA-1.4.4 for ); Mon, 14 Mar 1994 18:51:45 -0600 Received: by mwah177sc.d.umn.edu (5.0/SMI-SVR4) id AA06910; Mon, 14 Mar 1994 18:51:27 +0600 Message-Id: <9403150051.AA06910@mwah177sc.d.umn.edu> Subject: save game To: crossfire@ifi.uio.no Date: Mon, 14 Mar 1994 18:51:26 -0600 (CST) X-Mailer: ELM [version 2.4 PL22] Content-Type: text Content-Length: 1466 Status: RO Hi all - I'm having trouble saving games. Right now I'm just running the crossfire binary and playing alone. I go to save the game and it says "You have been saved." The next time I go to load up again it says "What is you password", and then goes into the process of making another character. I looked in the players directory and didn't see any save game files. Is there a variable I'm not setting or something like that? Here is the output of a "crossfire -o": Welcome to CrossFire, v0.90.3, copyright (C) 1992 Frank Tore Johansen. Non-standard include files: Secure: Logging: Libdir: /home/usrl/mhokkane/x/crossfire/lib Perm file: /forbid Shutdown file: /shutdown Save player: Save mode: 0660 Playerdir: /players Save homedir: Lock player: Use checksum: Tmpdir: /tmp Fontdir: /home/usrl/mhokkane/x/crossfire/fonts Compress: /usr/bin/compress Uncompress: /usr/bin/uncompress Map timeout: 300 Map reset: 7200 Max objects: 6000 Use_calloc: Speed_game: Use_los: CD los: CHRFONT: Use_swap_stats: Sound_effects: Server: Port: 13326 Explore mode: Shop listings: Max_time: 120000 SunOS mwah177sc.d.umn.edu 5.3 Generic_101318-12 sun4m sparc Any help would be appreciated. -- mhokkane@ub.d.umn.edu Mark A. Hokkanen University of Minnesota Duluth From crossfire-request Mon Mar 14 05:52:37 1994 Return-Path: Received: from munnari.oz.au by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 05:52:33 +0100 Received: from AARNet.ncom.nt.gov.au by munnari.oz.au with SMTP (5.83--+1.3.1+0.50) id AA29385; Mon, 14 Mar 1994 14:07:40 +1000 (from daml@dme.nt.gov.au) Received: from dme.nt.gov.au (adit.dme.nt.gov.au) by aarnet.ncom.nt.gov.au (PMDF V4.2-12 #4927) id <01H9YPSL8ZSW0013A0@aarnet.ncom.nt.gov.au>; Mon, 14 Mar 1994 13:34:12 CST Received: from golem.dme.nt.gov.au by dme.nt.gov.au (4.1/SMI-4.1) id AA23614; Mon, 14 Mar 94 13:36:07 CST Received: from daml.dme by golem.dme.nt.gov.au (4.1/SMI-4.1) id AA14858; Mon, 14 Mar 94 13:36:04 CST Received: by daml.dme (5.0/SMI-SVR4) id AA00927; Mon, 14 Mar 1994 13:37:14 --9-30 Date: Mon, 14 Mar 1994 13:37:14 --9-30 From: daml@dme.nt.gov.au (Damien Lunsford 61-89-895256) Subject: Putting Crossfire docs on xmosaic?? To: crossfire@ifi.uio.no Message-Id: <9403140407.AA00927@daml.dme> Content-Transfer-Encoding: 7BIT X-Sun-Charset: US-ASCII Content-Length: 119 Status: RO Um, don't know if this is a stupid idea but how about putting all the crossfire docs online on a Xmosaic site? Damien From crossfire-request Mon Mar 14 10:21:24 1994 Return-Path: Received: from thrall.cm.cf.ac.uk by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 10:21:22 +0100 Received: from cm.cf.ac.uk by thrall.cm.cf.ac.uk with SMTP (PP) id <14092-0@thrall.cm.cf.ac.uk>; Mon, 14 Mar 1994 09:22:58 +0000 Date: Mon, 14 Mar 94 09:22:56 GMT From: Simon McIntosh-Smith Message-Id: <9403140922.AA27199@garnet.cm.cf.ac.uk> To: crossfire@ifi.uio.no Subject: Re: Putting Crossfire docs on xmosaic?? Status: RO > Um, don't know if this is a stupid idea but how about putting all > the crossfire docs online on a Xmosaic site? No, it's a great idea, and one that is currently being implemented. It has been tried before but the problem is that the source for the crossfire docs is a rather spaghetti-like collection of LaTeX files. The converter that turns LaTeX files into the right format for the World-Wide-Web (WWW) couldn't handle it, so up until now only postscript versions have been available, both at Cardiff and now also by Frank Johansen himself: Cardiff: http://www.cm.cf.ac.uk:/Fun/ Frank: http://www.ifi.uio.no:/~frankj/crossfire/ The maintainers of the docs source code have said that new versions will be available anytime now, in a much neater format that hopefully the latex2html converter will be able to cope with. I hope so! As soon as anything happens I'll make sure the list knows about it... Sy Simon N. McIntosh-Smith, PhD candidate | Email : Simon.N.Smith@cm.cf.ac.uk Room M/1.36 Department of Computing Maths | Phone : +44 (0)222 874000 University of Wales, College of Cardiff | Fax : +44 (0)222 666182 PO Box 916, Cardiff, Wales, CF2 4YN, U.K. | Home : +44 (0)222 560522 Http : http://www.cm.cf.ac.uk:/People/Simon.N.Smith.html From crossfire-request Mon Mar 14 18:31:28 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 18:31:27 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA02614; Mon, 14 Mar 1994 12:27:57 +0500 Date: Mon, 14 Mar 1994 12:27:57 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403141727.AA02614@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Re Fonts? Content-Length: 112 Status: RO Correction... Second and futher players are defaulting to xpm, the first player defaults (correctly) to fonts. From crossfire-request Mon Mar 14 21:20:57 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 21:20:53 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA02582; Mon, 14 Mar 1994 12:26:54 +0500 Date: Mon, 14 Mar 1994 12:26:54 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403141726.AA02582@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Fonts? Content-Length: 268 Status: RO We've found tha tonly the first player has a fast enterance into the game with fonts.. Other players just get stuck and have to wait, like pixmaps are loading. THis is using crossfire -server -detach crossclient -server sitename Could someone check that? Thanks. :) From crossfire-request Mon Mar 14 18:18:50 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 18:18:48 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA01785; Mon, 14 Mar 1994 11:48:26 +0500 Date: Mon, 14 Mar 1994 11:48:26 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403141648.AA01785@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Charmisa out of control? Content-Length: 146 Status: RO One player here has a charisma spell, kicks him to 30 Chr, and he can buy things for LESS than he sells them... THat' shouldn't be like that. :) From crossfire-request Mon Mar 14 21:21:01 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 21:21:00 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA01604; Mon, 14 Mar 1994 11:43:11 +0500 Date: Mon, 14 Mar 1994 11:43:11 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403141643.AA01604@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Death crash... Content-Length: 516 Status: RO A few dungeon collapes, with too many monsters active, but no crashs for two days, until someone died... Reading symbols from /usr/bin/X11/crossfire...done. (gdb) where #0 0x6f224 in LOG () #1 0x19a10 in rec_sigsegv () #2 0xef737c54 in end () #3 0x6f200 in LOG () #4 0x781ec in remove_ob () #5 0x30298 in move_ob () It seems death always crashs the server. Is there a 90.3 patch for this? Also, it seem '-detach' is not the correct spelling. :) GOod job people... If we don't die, it doesn't crash. Cool. From crossfire-request Mon Mar 14 06:59:38 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 06:59:33 +0100 Received: by bolero.rahul.net id AA18977 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Sun, 13 Mar 1994 21:59:24 -0800 Date: Sun, 13 Mar 1994 21:59:24 -0800 From: Mark Wedel Message-Id: <199403140559.AA18977@bolero.rahul.net> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: Cfire: 0.90.3 <-> NeXT, and a question. Status: RO the install wanting the 'arch' directory was a mistake in the packing order. Before installing (version 0.90.3), you should touch all the crossfire.* files in lib (ie, if at the top directory, touch lib/crossfire* All those files are up to date, it is just that do to the packing order of the archive, some of the files that those depend on were newer. Thus, it wanted to re-build those files, but without the arch directory, was unable to do so. It should be fixed for future versions (ie, the packing order will be correct). HAve no idea about the crossclient troubles. --Mark From crossfire-request Mon Mar 14 05:08:33 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Mon, 14 Mar 1994 05:08:32 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id XAA28819; Sun, 13 Mar 1994 23:08:31 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA05152; Sun, 13 Mar 94 23:06:32 -0500 Date: Sun, 13 Mar 94 23:06:32 -0500 From: Michael Glenn Message-Id: <9403140406.AA05152@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: Cfire: 0.90.3 <-> NeXT, and a question. Status: RO I just installed 0.90.3. Great job! Nearly warning free. Notes: (I am running on a NeXT, gcc 2.5.6, MouseX X11R5) crossedit/include/Posix.h Needed to define NAME_MAX *before* including dirent.h. crossedit/Defines.h Removed the define of EXIT_FAILURE. Needed to install the arch directory in lib to install. (it wanted to recreate the crossfire.pix file for some reason) Ok, my question. When I start up with "crossclient" it immediately crashes with a bus error. However, if I ever start up with "crossclient -pix", then quit, and try "crossclient" again, then it works fine. Every time. Anyone have a reason for this kind of behavior? Michael From crossfire-request Sun Mar 13 11:26:11 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sun, 13 Mar 1994 11:26:09 +0100 Received: by bolero.rahul.net id AA18110 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Sun, 13 Mar 1994 02:26:06 -0800 Date: Sun, 13 Mar 1994 02:26:06 -0800 From: Mark Wedel Message-Id: <199403131026.AA18110@bolero.rahul.net> To: crossfire@ifi.uio.no, roy@eckerd.edu Subject: Re: xpm slow? Status: RO The screen redraws will be slower than using bitmaps or fonts. Fonts, in genral, should be very quick, simply because of the tranmission method to draw them. Bitmaps should be a little slower, with pixmaps the slowest. The re-do of the pixmap code to prevent flickering and stuff may make them slower if people are playing remotely, but I am not sure. I think it depends more on how the XServer handles stuff like that over links. The old method draw the background pixmap and then the foreground pixmap directly to the map (changing the clipmask and clip origin of the gc before drawing each pixmap.) The new method creats a couple more gc's, and draws the background to a temporary pixmap, sets the clipmask for the foreground pixmap, draws that to the temporary pixmap, and then draws that pixmap to the screen. Each draw operation has its own gc. This method saves one set clip origin and 1 set clip mask. However, it does one more draw (the cost of the gc's should be pretty low I think.) I actually compiled my local version of crossfire with profiling information in it. I haven't looked over it carefully, but from the one run I did, it looks like the draw function consumed a pretty low amount of CPU time comapred to most of the rest of the code. However, XPM code probably consumes more time for the XServer. And depending on how loaded the X server is (or the machine it is running on), and how synchronizing of flushign works, I could see this slowing things down. However, with client server, this should not be a problem. And I don't know if I really want to dig into the X output code that much, if client server is gong to happen sometime soon. One of my ideas regarding that was for functions that what keyboard input to call another function with a function as a paremeter. (ie, set_input_function(foo_bar), where foo_bar is a function.) Then when keyboard input is received, foo_bar is called with taht input (two modes, key mode, and line mode.) This would eliminate the various input states stored in the player structure. IT would also make functions that want more input a lot easier. But if client/server happens, a lot of that code may become irrelevant. --MArk From crossfire-request Sat Mar 12 23:55:20 1994 Return-Path: Received: from condor.CC.UMontreal.CA by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 23:55:17 +0100 Received: from aster.JSP.UMontreal.CA by condor.CC.UMontreal.CA with SMTP id AA23794 (5.65c/IDA-1.4.4 for crossfire@ifi.uio.no); Sat, 12 Mar 1994 17:55:12 -0500 Received: from ceres.jsp.umontreal.ca by aster.jsp.umontreal.ca (920330.SGI/5.17) id AA23133; Sat, 12 Mar 94 17:55:12 -0500 Received: by ceres.jsp.umontreal.ca (920330.SGI/5.17) id AA21979; Sat, 12 Mar 94 17:55:40 -0500 Message-Id: <9403122255.AA21979@ceres.jsp.umontreal.ca> From: casino@JSP.UMontreal.CA (Daniel Cote) Date: Sat, 12 Mar 1994 17:55:39 -0500 X-Mailer: Mail User's Shell (JSP Hacked Version) (7.2.5 10/14/92) To: crossfire@ifi.uio.no Subject: get_map bug ? Status: RO It seems there's a problem with get_map. I get compile errors in map.c and xio.c Here's an exemple of what I get: gcc -O2 -I/usr/include -I../include -DSYSV -DMALLOC_0_RETURNS_NULL -DFUNCPROTO -DNARROWPROTO -DFONTDIR=\"/JSP/C1/usagers/casino/lib/xfire/fonts\" -DFONTNAME=\"crossfire\" -Dsgi -DLIBDIR=\"/JSP/C1/usagers/casino/lib/xfire\" -c map.c -o map.o map.c: In function `wall': map.c:188: invalid type argument of `->' map.c: In function `blocks_view': map.c:199: invalid type argument of `->' map.c: In function `blocks_magic': map.c:209: invalid type argument of `->' map.c: In function `blocked': [ ... ] map.c: At top level: map.c:1198: warning: type mismatch with previous external decl map.c:188: warning: previous external decl of `get_map' map.c:1198: warning: type mismatch with previous implicit declaration map.c:842: warning: previous implicit declaration of `get_map' map.c:1198: warning: `get_map' was previously implicitly declared to return `int' make: *** [map.o] Error 1 I'm not sure how to solve that problem... Do you have any suggestions ? Thanks. Daniel From crossfire-request Sun Mar 13 05:26:21 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.4/ifi2.4) id for ; Sun, 13 Mar 1994 05:26:20 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA13478; Sat, 12 Mar 1994 23:23:11 +0500 Date: Sat, 12 Mar 1994 23:23:11 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403130423.AA13478@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: xpm slow? Content-Length: 166 Status: RO I've found using -xpm on crossclient makes the screen redraws much slower.... Why? Any way to speed that up? I'm going to stick to fonts, Ithink, for the speed... From crossfire-request Fri Apr 1 01:08:52 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 1 Apr 1994 01:08:47 +0200 Received: by bolero.rahul.net id AA28310 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Thu, 31 Mar 1994 15:09:40 -0800 Date: Thu, 31 Mar 1994 15:09:40 -0800 From: Mark Wedel Message-Id: <199403312309.AA28310@bolero.rahul.net> To: jason.fosback@mccaw.com, khw2x@sonja.math.virginia.edu Subject: Re: Getting Xpm to work on a NeXT Cc: crossfire@ifi.uio.no Status: RO I've noticed that on some systems, it seems that duuring compile, it is using -DXpm_pix instead of -DXpm_Pix The later is what must be used. I don't know why in some cases the first one is being used. As a side note, I have compiled and run crossfire with the newset (newest) XPM library with no problems. (version 3.4a I believe). --Mark From crossfire-request Fri Apr 1 00:00:57 1994 Return-Path: Received: from mccaw.com by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 1 Apr 1994 00:00:53 +0200 Received: from nwestmail.entp.mccaw.com ([155.176.15.34]) by mccaw.com (4.1/SMI-4.1) id AA12267; Thu, 31 Mar 94 14:01:32 PST Received: from axys69.nwest.mccaw.com by nwestmail.entp.mccaw.com (4.1/McCaw SUN-RMR Mailer, SMI-4.1) id AA23795; Thu, 31 Mar 94 14:01:31 PST Received: from cheron.nwest.mccaw.com by axys69.nwest.mccaw.com (NX5.67d/NX3.0M, dpg hack 15oct93) id AA09621; Thu, 31 Mar 94 14:01:29 -0800 From: Jason Fosback Message-Id: <9403312201.AA09621@axys69.nwest.mccaw.com> Received: by cheron.nwest.mccaw.com (NX5.67d/NX3.0X, dpg hack 20mar93) id AA03818; Thu, 31 Mar 94 14:01:29 -0800 Date: Thu, 31 Mar 94 14:01:29 -0800 Received: by NeXT.Mailer (1.100.RR) Received: by NeXT Mailer (1.100.RR) To: "Kevin H. Weiss" Subject: Re: Getting Xpm to work on a NeXT Cc: crossfire@ifi.uio.no Status: RO If you can tell me where the sources to XPM are, I'll try to get Crossfire to work with it. -jason ____________________________________________________________ Jason Fosback, Systems Engineer | No sir, I didn't like it --- Paradigm Systems Corp --- | -R&S Internet: jason_fosback@psca.com | Star Trek: NeXT mail: jason_fosback@psca.com | The NeXT Generation... From crossfire-request Thu Mar 31 22:56:41 1994 Return-Path: Received: from virginia.edu by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 22:56:37 +0200 Received: from sonja.math.virginia.edu by uvaarpa.virginia.edu id aa18300; 31 Mar 94 15:57 EST Received: by sonja.math.Virginia.EDU (NX5.67c/NX3.0S) id AA06420; Thu, 31 Mar 94 15:57:13 -0500 From: "Kevin H. Weiss" Message-Id: <9403312057.AA06420@sonja.math.Virginia.EDU> Subject: Getting Xpm to work on a NeXT To: crossfire@ifi.uio.no Date: Thu, 31 Mar 1994 15:57:10 -36803936 (EST) X-Mailer: ELM [version 2.4 PL21] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 572 Status: RO I've compiled Xpm with no problems. However, crossfire doesn't seem to think I've compiled with XPM enabled... I get the following: {sonja}/users/khw2x>crossclient -xpm xhost +sonja.math.Virginia.EDU sonja.math.Virginia.EDU being added to access control list xhost: must be on local machine to add or remove hosts. Failed to set XPM mode (server might not have it enabled): Unknown option. Okay, NeXT people, what do I need to change to get it to work? thanks, -kevin P.S. Crossfire-0.90.4 seems to be pretty stable. Keep up the good work! From crossfire-request Thu Mar 31 17:58:15 1994 Return-Path: Received: from mother.ludd.luth.se by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 17:58:14 +0200 Received: from vortex.sdf.luth.se (vortex.sdf.luth.se [130.239.144.1]) by mother.ludd.luth.se (8.6.8/8.6.6) with SMTP id RAA00522 for ; Thu, 31 Mar 1994 17:58:21 +0200 Received: from krikkit.sdf.luth.se ([130.239.144.11]) by vortex.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA09058; Thu, 31 Mar 94 17:54:09 +0200 Received: by krikkit.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA19504; Thu, 31 Mar 94 17:54:16 +0200 From: Emil.Larsson@sdf.luth.se (Emil Larsson) Message-Id: <9403311554.AA19504@krikkit.sdf.luth.se> Subject: Install Problem To: crossfire@ifi.uio.no Date: Thu, 31 Mar 1994 17:54:15 +0200 (MET DST) X-Mailer: ELM [version 2.4 PL23] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 454 Status: RO I have a problem with crossfire 0.90.4, I get this error message when I am trying to start Crossfire: ld.so: Undefined symbol: _command_title ------------------------------------------------------------------------------- name: Emil Larsson email: emil@sdf.luth.se Your conscience never stops you from doing anything. It just stops you from enjoying it. From crossfire-request Thu Mar 31 17:52:10 1994 Return-Path: Received: from ild.alkymi.unit.no by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 17:52:10 +0200 Received: from jord.alkymi.unit.no by ild.alkymi.unit.no with SMTP id AA12446 (5.65c/IDA-1.4.4 for ); Thu, 31 Mar 1994 17:52:06 +0200 From: Inge Berg Fenstad Received: by jord.alkymi.unit.no ; Thu, 31 Mar 1994 17:52:45 +0200 Message-Id: <199403311552.AA25514@jord.alkymi.unit.no> Subject: Re: new multiple spell To: ingebf@alkymi.unit.no Date: Thu, 31 Mar 1994 17:52:44 +0200 (MET DST) Cc: crossfire@ifi.uio.no In-Reply-To: <199403310553.VAA00634@soda.berkeley.edu> from "Peter Mardahl" at Mar 30, 94 09:53:58 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 397 Status: RO There is still pretty easy to get 30 in any stat since when you cast the stat-spell it is your current stat that counts and not the basis stat. This way you can put on a lot of -stat items and cast some spells and then put on the +stat items and woups...you have 30....this is perhaps not so useful when handling stats i a fight...BUT to get cha 30 for selling and bying is still as easy. Inge From crossfire-request Thu Mar 31 13:28:32 1994 Return-Path: Received: from cc.lut.fi by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 13:28:31 +0200 Received: (from hevi@localhost) by cc.lut.fi (8.6.8/8.6.6/1.17.kim) id OAA09369; Thu, 31 Mar 1994 14:28:18 +0300 Date: Thu, 31 Mar 1994 14:28:17 +0300 (EETDST) From: Petri Heinil{ Subject: Re: Maps distribution To: Raphael Quinet cc: crossfire@ifi.uio.no In-Reply-To: <9403302136.AA25661@montefiore.ulg.ac.be> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO On Wed, 30 Mar 1994, Raphael Quinet wrote: > To all map creators out there: when you create a new set of > maps, please keep it all in a subdirectory, and distribute > a tar file with only these files in it. > > This would be nice if there were several "plug-in" map > packages instead of a huge file with all maps in it. > When you get a new map, you would only have to change the > entry/exit point in the main map, then all new maps would > be available. > > Well, I could be wrong, but I think this is a better > solution than the current one. Any comments? ***RIGHT*** That is one of the primiray ideas of the filepaths. That you can modularizise the map package into the quest. Earlier I have carried out the idea that the MapPack should be relative to the author, but after practice this is not good idea [I think like this yesterday, but not today. - TM - NoMeansNo]. The good size of the MapPack is the quest; if you have a idea of the quest, build environment arount it and distribute ! This means the size of MapPack comes somewhat smaller that packages usually today. The other thing I have concerned is using different World's. Ie. changing the CROSSFIRE_LIB environment variable totally (the flag -lib would be nice, but I'm too lazy to implement it (more I do the ScriptHack :), any volunteer ? :) Because the exist now inbalance thinking different quests. You can go to easy maps, get the items and expo, then go straight to the end of the Quest, without developing the character from the beginning (well, this is one stratery the, other is there are different level quests (see I'm inflected, I have addicted to nethack last times :)) But making different World is not quite easy. I tried once and hear "the last scream of the last encounter map" :) The things that came out were, what are the needed maps, archetypes or forms of the archetypes, treasures other files. In the Lib exists file and another, have any one idea how to write them out from scratch to make OwnDifferentWorld ? (even have a energy to write a documentation :) -- The Page -- From crossfire-request Thu Mar 31 09:24:16 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 09:24:12 +0200 Received: (from tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.8/8.6.6) id XAA24715 for crossfire@ifi.uio.no; Wed, 30 Mar 1994 23:24:03 -0800 From: Tyler Van Gorder Message-Id: <199403310724.XAA24715@corpse.ecst.csuchico.edu> Subject: LETS TRY IT AGAIN! 8) To: crossfire@ifi.uio.no Date: Wed, 30 Mar 1994 23:24:03 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 192 Status: RO ok, I have now compiled the server under .94...and barring some huge problem it should be up "most" of the time :> anyway chico server is corpse.ecst.csuchico.edu give it a try Tyler. From crossfire-request Thu Mar 31 07:54:12 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 07:54:09 +0200 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id VAA00634 for crossfire@ifi.uio.no; Wed, 30 Mar 1994 21:53:58 -0800 Date: Wed, 30 Mar 1994 21:53:58 -0800 From: Peter Mardahl Message-Id: <199403310553.VAA00634@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: new pickup modes Status: RO I hacked in but didn't document the new pickup mode: pickup 0-5 perform as before. pickup does this; when you step on a square, it will pickup all items of a value density greater than what you set pickup to. value density is / goldcoins have a value density of 66, I find that pickup 10 is very handy. It will pickup silver, gold, rings, wands, books, and scrolls automatically for you. Artifacts are also picked up. This takes away a lot of the mindlessness in the game: you don't have to explicitly sort through all the garbage to pick up coins. The worth in goldcoins is what you would get by selling the item on the ground as-is in a store--it will not 'identify' items for you. Regards, PeterM From crossfire-request Thu Mar 31 07:02:26 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 07:02:22 +0200 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id VAA26146 for crossfire@ifi.uio.no; Wed, 30 Mar 1994 21:02:15 -0800 Date: Wed, 30 Mar 1994 21:02:15 -0800 From: Peter Mardahl Message-Id: <199403310502.VAA26146@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: CASTING_TIME Status: RO Who hacked this in? There are some problems with how it interacts with the magic rune and marking rune spells, and with reincarnation spell. These spells are used through the invoke command, which uses a string argument to the spell. Under the CASTING_TIME modifications, this string argument is lost at the time the spell is actually cast. Do you want to fix this or shall I? (wish I knew your name.... deleted my copy of who did what.) Regards, PeterM From crossfire-request Thu Mar 31 06:09:42 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 06:09:39 +0200 Received: (from tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.8/8.6.6) id UAA20419; Wed, 30 Mar 1994 20:09:19 -0800 From: Tyler Van Gorder Message-Id: <199403310409.UAA20419@corpse.ecst.csuchico.edu> Subject: Re: Feature suggestion & more questions To: prevosto@enstb.enst-bretagne.fr (Laurent I9 012 1803) Date: Wed, 30 Mar 1994 20:09:19 -0800 (PST) Cc: crossfire@ifi.uio.no, sew@philabs.Philips.COM In-Reply-To: <199403302125.AA00925@enstb.enst-bretagne.fr> from "Laurent I9 012 1803" at Mar 30, 94 11:25:00 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 2144 Status: RO > I totally agree with u. I was realy disappointed by releases 0.90.3 > and 0.90.4... People spend their time talking about minor changes but no new > maps are added to the game... > Here, we had done new maps and monsters (brittany maps) but they are > only in the 0.90.1 map file and not in the following ones ??? I don't know > why... So, we still play with the 0.90.1 release (more maps !!!) > > Are maps for the 0.90.1 and before still compatible with 0.90.4 ? > If they are not, does a map-converter exist ? > We are gonna try to install our britany maps and monsters in the 0.90.4 and > send them again to ifi. > > They are still available in the incoming directory of crossfire at ifi. > If they still work, u can use them : ...they are hard maps... > Ok, the old maps (being the ones before crossedit) had one problem: Basically, many of the maps had very little thought in how much experience was being made available by adding such things as 30 chineese dragons. other maps had dragons mixed with devils, mixed with goblins, mixed with big wizard, mixed with....etc etc..etc......with little thought on how all these monsters got on the map...what are they all doing together? are they buddies????? What I'm trying to say is maps that make a player think.....have a storyline, are much more interesting then the mindless killing....which is the main object of many of the old maps........try to get some consistancey in your maps. They are put into the game so characters can scum experience. That is why I threw out most of the maps in the old distribution here at chico. That is not what I want the goal to be...at least at the Chico server..I would much rather see people solving quests..........in the new maps do you talk with the monsters????? A LOT of them do talk and I have seen it more then once when a person who is just on a killing rampage..they manage to kill a monster which is key to getting to other levels....... I think if we want to get a better balance....perhaps we should make it harder to advance levels.....ei....either make monsters worth less experience..or make less monsters. Tyler. From crossfire-request Thu Mar 31 05:22:42 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 05:22:38 +0200 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id TAA18422 for crossfire@ifi.uio.no; Wed, 30 Mar 1994 19:22:28 -0800 Date: Wed, 30 Mar 1994 19:22:28 -0800 From: Peter Mardahl Message-Id: <199403310322.TAA18422@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: spell delaying Status: RO This new spell system does a lot toward balancing the game, actually. If a wizard can't fire spells off as fast, he's not as deadly. Does this affect monster's spells as well? I'll give that a shot. From crossfire-request Thu Mar 31 05:13:19 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 31 Mar 1994 05:13:15 +0200 Received: by bolero.rahul.net id AA23430 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Wed, 30 Mar 1994 19:13:03 -0800 Date: Wed, 30 Mar 1994 19:13:03 -0800 From: Mark Wedel Message-Id: <199403310313.AA23430@bolero.rahul.net> To: crossfire@ifi.uio.no, quinet@montefiore.ulg.ac.be Subject: Re: Maps distribution Status: RO I plan on trying to add some of the old maps to the present map set. I do not just want to include all the old maps in universally. There are many bad maps there, which should be excluded. If you have created new maps, which meet the requires of the map.guidelines file in doc, let me know or send them to me. I do not hunt the ftp sites looking for maps. Also, if you notice a problem with a map, let me know. --Mark From crossfire-request Wed Mar 30 23:36:47 1994 Return-Path: <<@vm1.ulg.ac.be:quinet@montefiore.ulg.ac.be>> Received: from vm1.ulg.ac.be by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 23:36:46 +0200 Received: from montefiore.ulg.ac.be by vm1.ulg.ac.be (IBM VM SMTP V2R2) with TCP; Wed, 30 Mar 94 23:35:17 +0200 Received: from verif1.montefiore.ulg.ac.be by montefiore.ulg.ac.be (4.1/SMI-4.1) id AA25661; Wed, 30 Mar 94 23:36:43 +0200 Date: Wed, 30 Mar 94 23:36:42 +0200 From: quinet@montefiore.ulg.ac.be (Raphael Quinet) Message-Id: <9403302136.AA25661@montefiore.ulg.ac.be> To: crossfire@ifi.uio.no Subject: Maps distribution Status: RO To all map creators out there: when you create a new set of maps, please keep it all in a subdirectory, and distribute a tar file with only these files in it. This would be nice if there were several "plug-in" map packages instead of a huge file with all maps in it. When you get a new map, you would only have to change the entry/exit point in the main map, then all new maps would be available. Well, I could be wrong, but I think this is a better solution than the current one. Any comments? -Raphael From crossfire-request Wed Mar 30 23:25:14 1994 Return-Path: Received: from melimelo.enst-bretagne.fr by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 23:25:13 +0200 Received: from enstb.enst-bretagne.fr by melimelo.enst-bretagne.fr (5.67b8/090294); Wed, 30 Mar 1994 23:24:57 +0100 Received: from venus.enst-bretagne.fr by enstb.enst-bretagne.fr (5.65c8/180193); Wed, 30 Mar 1994 23:25:00 +0200 Date: Wed, 30 Mar 1994 23:25:00 +0200 From: prevosto@enstb.enst-bretagne.fr (Laurent I9 012 1803) Message-Id: <199403302125.AA00925@enstb.enst-bretagne.fr> To: crossfire@ifi.uio.no, sew@philabs.Philips.COM Subject: re: Feature suggestion & more questions X-Charset: LATIN1 X-Char-Esc: 29 Status: RO Scott wrote : > In 0.90.3 the maps aren't as good either, I was hoping it would just have > more maps and keep the old ones, but it was all new. I think the old ones > were better, maybe the maps we have are messed up? > > It seems really wierd because most buildings in the towns are closed, is it > supposed to be that way? It just doesn't seem to have the same depth. > > Can someone recommend good maps, I would appreciate it. > > PS - we should be upgrading to 0.90.4 and maps, is that any better than > 0.90.3 ?? > > Thanks for any help and input !! > > Scott I totally agree with u. I was realy disappointed by releases 0.90.3 and 0.90.4... People spend their time talking about minor changes but no new maps are added to the game... Here, we had done new maps and monsters (brittany maps) but they are only in the 0.90.1 map file and not in the following ones ??? I don't know why... So, we still play with the 0.90.1 release (more maps !!!) Are maps for the 0.90.1 and before still compatible with 0.90.4 ? If they are not, does a map-converter exist ? We are gonna try to install our britany maps and monsters in the 0.90.4 and send them again to ifi. They are still available in the incoming directory of crossfire at ifi. If they still work, u can use them : ...they are hard maps... Laurent From crossfire-request Wed Mar 30 22:58:48 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 22:58:44 +0200 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id MAA08890; Wed, 30 Mar 1994 12:58:31 -0800 Date: Wed, 30 Mar 1994 12:58:31 -0800 From: Peter Mardahl Message-Id: <199403302058.MAA08890@soda.berkeley.edu> To: crossfire@ifi.uio.no, sew@philabs.Philips.COM Subject: re: Feature suggestion & more questions Status: RO Recently my SYS ADMIN upgraded to the 0.90.3 from 0.89. and the keys I like were gone! Converting players isn't TOO hard. Ask your sysadmin to fix it. In 0.90.3 the maps aren't as good either, I was hoping it would just have more maps and keep the old ones, but it was all new. I think the old ones were better, maybe the maps we have are messed up? All sorts of cheap, easy ways to get cash and go up levels existed in the old maps. The new ones are better. If you want more maps, then involve yourself in making maps or converting old ones and installing them in the new map distribution. The new maps are here to stay. And they really are much better. There were no quests in the old maps, it was just a hack and slash game. It seems really wierd because most buildings in the towns are closed, is it supposed to be that way? It just doesn't seem to have the same depth. No, it doesn't. You can do something about this if you care to involve yourself. Talk to your crossfire sysadmin. PS - we should be upgrading to 0.90.4 and maps, is that any better than 0.90.3 ?? PeterM From crossfire-request Wed Mar 30 22:22:13 1994 Return-Path: Received: from philabs.Philips.COM by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 22:22:10 +0200 From: sew@philabs.Philips.COM Received: from condor.Philabs.Philips.Com by philabs.Philips.COM (smail2.5/12-15-87/4.1) id AA04335; Wed, 30 Mar 94 15:21:59 EST Received: from loopback by condor.Philabs.Philips.Com (4.1/SMI-4.1) id AA15839; Wed, 30 Mar 94 15:21:57 EST Message-Id: <9403302021.AA15839@condor.Philabs.Philips.Com> To: crossfire@ifi.uio.no Subject: re: Feature suggestion & more questions Date: Wed, 30 Mar 94 15:21:56 EST Status: RO > >I was playing Crossfire last night (as usual), and I had an idea. It >would be nice to have a drop hot key. This drop hot key would have >different modes for dropping, assigned by a different hot key. > > >What do you guys think? Is this a good idea? If so, are there better hot >keys and modes? More importantly, who could put this in? I think this is a great idea! How about numbering items? Then all you would have to do is shift_d [item # here]? Recently my SYS ADMIN upgraded to the 0.90.3 from 0.89. and the keys I like were gone! Also, I couldn't even use my old character, every time I tried it crashed. Is there a fix for this? In 0.90.3 the maps aren't as good either, I was hoping it would just have more maps and keep the old ones, but it was all new. I think the old ones were better, maybe the maps we have are messed up? It seems really wierd because most buildings in the towns are closed, is it supposed to be that way? It just doesn't seem to have the same depth. Can someone recommend good maps, I would appreciate it. PS - we should be upgrading to 0.90.4 and maps, is that any better than 0.90.3 ?? Thanks for any help and input !! Scott From crossfire-request Wed Mar 30 19:25:19 1994 Return-Path: Received: from mccaw.com by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 19:25:14 +0200 Received: from nwestmail.entp.mccaw.com ([155.176.15.34]) by mccaw.com (4.1/SMI-4.1) id AA07126; Wed, 30 Mar 94 09:25:01 PST Received: from axys69.nwest.mccaw.com by nwestmail.entp.mccaw.com (4.1/McCaw SUN-RMR Mailer, SMI-4.1) id AA13203; Wed, 30 Mar 94 09:25:00 PST Received: from cheron.nwest.mccaw.com by axys69.nwest.mccaw.com (NX5.67d/NX3.0M, dpg hack 15oct93) id AA14929; Wed, 30 Mar 94 09:24:59 -0800 From: Jason Fosback Message-Id: <9403301724.AA14929@axys69.nwest.mccaw.com> Received: by cheron.nwest.mccaw.com (NX5.67d/NX3.0X, dpg hack 20mar93) id AA02740; Wed, 30 Mar 94 09:24:59 -0800 Date: Wed, 30 Mar 94 09:24:59 -0800 Received: by NeXT.Mailer (1.100.RR) Received: by NeXT Mailer (1.100.RR) To: crossfire@ifi.uio.no Subject: Feature suggestion Status: RO I was playing Crossfire last night (as usual), and I had an idea. It would be nice to have a drop hot key. This drop hot key would have different modes for dropping, assigned by a different hot key. For example, you could have a drop key of shift-d (D). Whenever you pressed shift-d, certain things would drop. What would drop could default to nothing. You could change this by pressing shift-3 (#). The modes could be something like: nothing, unwielded armor, unwielded weapons, unwielded armor and weapons, all unwielded items. This feature would be really nice when you're over-burdened with stuff, and you need to be able to move quickly and in a hurry. It would also be nice when you're cruising through a dungeon picking up stuff and you want to "stockpile" along the way. What do you guys think? Is this a good idea? If so, are there better hot keys and modes? More importantly, who could put this in? -jason ____________________________________________________________ Jason Fosback, Systems Engineer | No sir, I didn't like it --- Paradigm Systems Corp --- | -R&S Internet: jason_fosback@psca.com | Star Trek: NeXT mail: jason_fosback@psca.com | The NeXT Generation... From crossfire-request Wed Mar 30 14:56:24 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 14:56:21 +0200 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Wed, 30 Mar 1994 13:56:10 +0100 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA12483; Wed, 30 Mar 94 13:56:07 BST To: Nick Williams Cc: crossfire@ifi.uio.no Subject: Re: FTP site for crossfire In-Reply-To: Your message of "Tue, 29 Mar 1994 17:14:45 +0100." Date: Wed, 30 Mar 1994 12:56:06 +0000 Message-Id: <14592.765032166@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Wow! Serious speed up in net performance Nick! Instead of taking half an hour to get a new version of crossfire - it took me about 2 minutes!!!!! One very happy crossfire addict! Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Wed Mar 30 02:40:44 1994 Return-Path: Received: from dme.nt.gov.au by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 02:40:38 +0200 Received: from golem.dme.nt.gov.au by dme.nt.gov.au (4.1/SMI-4.1) id AA23432; Wed, 30 Mar 94 10:10:29 CST Received: from daml.dme by golem.dme.nt.gov.au (4.1/SMI-4.1) id AA08898; Wed, 30 Mar 94 10:10:19 CST Received: by daml.dme (5.0/SMI-SVR4) id AA00341; Wed, 30 Mar 1994 10:11:33 --9-30 Date: Wed, 30 Mar 1994 10:11:33 --9-30 From: daml@dme.nt.gov.au (Damien Lunsford 61-89-895256) Message-Id: <9403300041.AA00341@daml.dme> To: crossfire@ifi.uio.no Subject: bug fix X-Sun-Charset: US-ASCII Content-Length: 173 Status: RO > > for solaris users..... sorry the lkast message was slightly wrong its meant to be > > > #if defined(__sgi__) || (defined(__sun__) && defined(SVR4)) > Damien From crossfire-request Wed Mar 30 02:06:28 1994 Return-Path: Received: from dme.nt.gov.au by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 02:06:20 +0200 Received: from golem.dme.nt.gov.au by dme.nt.gov.au (4.1/SMI-4.1) id AA23383; Wed, 30 Mar 94 09:36:08 CST Received: from daml.dme by golem.dme.nt.gov.au (4.1/SMI-4.1) id AA08012; Wed, 30 Mar 94 09:35:59 CST Received: by daml.dme (5.0/SMI-SVR4) id AA00588; Wed, 30 Mar 1994 09:37:13 --9-30 Date: Wed, 30 Mar 1994 09:37:13 --9-30 From: daml@dme.nt.gov.au (Damien Lunsford 61-89-895256) Message-Id: <9403300007.AA00588@daml.dme> To: crossfire@ifi.uio.no Subject: bug fix X-Sun-Charset: US-ASCII Content-Length: 808 Status: RO for solaris users..... in client/client.c *************** 42c42 < #if defined(__sgi__) --- > #if defined(__sgi__) || (defined(__sun__) && defined(__SVR4)) *************** Otherwise we get an error compiling with Solaris 2.3 about no definition for SI_HOSTNAME. Cheers Brett Northern Territory bmw@dme.nt.gov.au Department of Mines and Energy bmw@it.ntu.edu.au Australia Brett Whinnen Phone: +61 89 89 5256 (b/h) Montage RDBMS Administrator / +61 89 32 2731 (a/h) Acting Senior Database Analyst Fax : +61 89 81 7861 (b/h) The mere words above express my own opinion and views, they do not in anyway reflect the thoughts of the Department that employs me. From crossfire-request Wed Mar 30 08:25:03 1994 Return-Path: Received: from coombs.anu.edu.au by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 08:24:59 +0200 Message-Id: <199403300624.16436.ifi@ifi.uio.no> Received: by coombs.anu.edu.au (1.37.109.8/16.2) id AA29230; Wed, 30 Mar 1994 16:25:26 +1000 From: Rohan Pitchford Subject: Re: Crossfire 0.90.4 Announcement To: crossfire@ifi.uio.no Date: Wed, 30 Mar 1994 16:25:26 +1000 (EST) In-Reply-To: <199403291049.27753.sognsvann.ifi.uio.no@ifi.uio.no> from "Mark Wedel" at Mar 29, 94 12:49:41 pm X-Mailer: ELM [version 2.4 PL21] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 4600 Status: RO Mark, I am still getting these. I thought I was off the list , what must I do to make sure of this?? rp > The following is the same as crossfire-0.90.4-README. The bits about > what each file does should probably be added to the README file that is > in the directory with the crossfire sources. > > > There are three separate tar archives in the Crossfire 0.90.4 distribution. > > crossfire-0.90.4.tar.gz contains the actual program code, as well as > premade archetype, bitmaps, and xpm files. > > crossfire-0.90.4-maps.tar.gz contains all the maps. The changes > from the previous map distribution are mostly small, but if you plan > on writing new maps or changing existing maps, you should get this > file. > > crossfire-0.90.4-arch.tar.gz contains the unpacked archetype (arch) > directory. This file is not needed if you just want to compile the > games and play. The contents of this archive is used to create > the archetypes, bmaps, font, and X PixMap (XPM) files. You only need > it if you want to add new archetypes, or mess around with the existing > ones. > > Notable changes from Crosfire 0.90.3 to 0.90.4: > > Many more XPM images now properly noted. NOTE TO COLORERS: A few minor changes > have been to the xpm.template file (palegreen has been replaced with > green3, and a more medium orange has been added.) I replaced palegreen > because it was very close to the 'green' color already present. And > a medium green was lacking. A medium orange was also lacking, so I added > one in. > > New pickup modes, that can be based on value density (from > Peter Mardahl ) > > Spells now have a casting time. (From Matthew Zeher ) > > Added libproto1.h file. This will be used for function prototypes > are affected by certain settigns (IE, SPEED_GAME). This way, people > should not need to run 'make proto' > > New XPM loading method. Creates montage of the xpm files, > so that not as many calls to XPM are needed. This has reduced loading > time to about 30% of what it was before. Note: This done mean it takes > some more memory at start up, as the montage has to be stored > temporarily. > > Changed charisma bonuses. At 30 charisma, it will no longer be possible to > buy and item, and then sell it for more than you bought it for. > > Graphic exposures turned off on the GC's that are used in the game window. > Should improve performance. > > When a raise stat spell ends, the proper message (ie, You look ugly, you > feel less intelligent, etc) will now be printed out. > > If player NOT_PERMADEATH mode, and you die, a stat will only be decreased > one. Before, that stat was decreased one, and the max stat was set to that > value. So if the player was poisoned, or a stat was lowered due to some > other reason, that loss would become permanent. Now, both the stat and > orig_stat only gets decreased by one. > > invoke.c removed, cast_spell modified to handle what invoke.c did. > > Keep old shoot type if reading a scroll, instead of it being set to none. > > Raise stats spells should be progressively more costly (From Peter Mardahl) > Should now be able to handle broken pipes without problem (ie, telnet > session closing unexpectedly). Made it so that listen level 0 on a socket > means that draw_all_sockets will not write to that socket. Crossclient uses > this so that it does not get unexpected messages, and thinks that it failed. > > Added 'set font' option. This basically unsets color pixmaps or xpm mode. > If crossclient was run without -xpm or -pix mode, it will send this command > to use fonts. What this means is that set (font,pix,xpm) should set that > display mode. Before, the display selection it defaulted to for crossclient > seemed unreliable at best. > > Fixed memory allocation problem in commands.c (it was writing to more > bytes than it had allocated) > > Draw message window almost complete re-written. In an effort to cut > down on flashing of the the status bars. ( Niilo Neuvo ) > > More bug fixes for spells (from Peter Mardahl) > > Fixed some bugs for compiling on the Alpha running OSF/1 1.3 > > > AVAILABILITY: > > Crossfire is avaible on the following ftp sites > > ftp.ifi.uio.no:/pub/crossfire (129.240.64.2) > ftp.world.net:/pub/crossfire (192.243.32.18) > yoyo.cc.monash.edu.au:/pub/crossfire (130.194.9.1) > > Note: there may be a short delay before the ftp.world.net and > yoyo.cc.monash.edu.au sites get the newest version. > > > Mark Wedel > master@rahul.net > From crossfire-request Wed Mar 30 02:41:23 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 02:41:12 +0200 Received: by bolero.rahul.net id AA26703 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 29 Mar 1994 16:41:02 -0800 Date: Tue, 29 Mar 1994 16:41:02 -0800 From: Mark Wedel Message-Id: <199403300041.AA26703@bolero.rahul.net> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: 0.90.4 and pixmaps ??? Status: RO If define in the compiles should be -DXpm_Pix, not -DXpm_pix. If you are getting the later, then it will not work. As for the loading, I am not really sure what the problem is. Since it loaded some OK, I don't know why it wouldn't load others properly. It (If) there are problems loading the XPM file, it should print out an error message with an error code. --Mark From crossfire-request Wed Mar 30 02:18:13 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 02:18:09 +0200 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id QAA22272 for crossfire@ifi.uio.no; Tue, 29 Mar 1994 16:17:44 -0800 Date: Tue, 29 Mar 1994 16:17:44 -0800 From: Peter Mardahl Message-Id: <199403300017.QAA22272@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: bmaps problem Status: RO I haven't run into this problem before. Has the imakefile been screwed up? Can't open bmaps file: No such file or directory buf = /usr/X11R5/lib//crossfire/bmaps From crossfire-request Wed Mar 30 06:26:33 1994 Return-Path: Received: from virginia.edu by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 30 Mar 1994 06:26:30 +0200 Received: from sonja.math.virginia.edu by uvaarpa.virginia.edu id aa19540; 29 Mar 94 23:26 EST Received: by sonja.math.Virginia.EDU (NX5.67c/NX3.0S) id AA04167; Tue, 29 Mar 94 23:26:26 -0500 From: "Kevin H. Weiss" Message-Id: <9403300426.AA04167@sonja.math.Virginia.EDU> Subject: sonja server possibly working... To: crossfire@ifi.uio.no Date: Tue, 29 Mar 1994 23:26:20 -36803936 (EST) X-Mailer: ELM [version 2.4 PL21] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 240 Status: RO well, I've finally compiled the latest (v0.90.4) version of crossfire for my NeXT. I haven't quite got the xpm stuff working (I don't know why :) but, the pixmaps are okay... The address is: sonja.math.virginia.edu Good luck!!!!! -kevin From crossfire-request Tue Mar 29 19:43:30 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 19:43:27 +0200 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.8.1+DND/4.5HUB) id MAA22263; Tue, 29 Mar 1994 12:43:17 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA22085; Tue, 29 Mar 94 12:43:59 -0500 Date: Tue, 29 Mar 94 12:43:59 -0500 From: Michael Glenn Message-Id: <9403291743.AA22085@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: Re: 0.90.4 and pixmaps ??? Status: RO > Hmm, just pulled 0.90.4 and tried compiling with the > lines that define xpm compilation undefined, and indeed > I see the cc lines as output by Make with the correct > -DXpm_pix flag, but when I try 'crossfire -xpm' I get > the error message "This version wasn't compiled with > xpm". Any ideas??? This is probably unrelated. But when I try "crossfire -xpm" it always crashes. Please tell me why, because I love the color pixmaps! :) I see the following: [normal debug messages removed] Building color pixmaps ........................................ ............................................................... Error code BadValue (integer parameter out of range for operation) Error code BadDrawable (invalid Pixmap or Window parameter) [These two lines repeat about 20 times] Emergency save: logon Received SIGPIPE, ignoring... draw_socket: Broken pipe (failed) Received SIGPIPE, ignoring... draw_socket: Broken pipe Fatal: Too many errors Emergency save: logon [etc] From crossfire-request Tue Mar 29 18:16:10 1994 Return-Path: Received: from barney.cs.city.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 18:16:07 +0200 Received: from wilma.cs.city.ac.uk by barney.cs.city.ac.uk; Tue, 29 Mar 1994 17:20:13 +0100 Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.wilma.cs.city.ac.uk.sun4.41 via MS.5.6.wilma.cs.city.ac.uk.sun4_41; Tue, 29 Mar 1994 17:14:45 +0100 (BST) Message-Id: Date: Tue, 29 Mar 1994 17:14:45 +0100 (BST) From: Nick Williams To: crossfire@ifi.uio.no Subject: FTP site for crossfire In-Reply-To: <9403291514.AA01950@garnet.cm.cf.ac.uk> References: <9403291514.AA01950@garnet.cm.cf.ac.uk> Status: RO For those in the UK, we are currently mirroring the crossfire archive into ftp.cs.city.ac.uk:/pub/games/crossfire/ It's run nightly, plus a bit faster when I'm impatient :) Nick Williams, Systems Architecture Research Centre, City University, London, EC1V 0HB. UK. Web: http://web.cs.city.ac.uk/finger?njw E-mail: njw@cs.city.ac.uk (MIME and ATK) Work Telephone: +44 71 477 8551 Work Fax: +44 71 477 8587 From crossfire-request Tue Mar 29 18:11:50 1994 Return-Path: Received: from thrall.cm.cf.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 18:11:45 +0200 Received: from cm.cf.ac.uk by thrall.cm.cf.ac.uk with SMTP (PP) id <01610-0@thrall.cm.cf.ac.uk>; Tue, 29 Mar 1994 17:11:17 +0100 Date: Tue, 29 Mar 94 17:11:13 BST From: Simon McIntosh-Smith Message-Id: <9403291611.AA03324@garnet.cm.cf.ac.uk> To: crossfire@ifi.uio.no Subject: Extra_Flags option in 0.90.4 Status: RO Hi, I need to tell gcc that our X11R5 libraries are not installed in the usual place (we are still using X11R4 on the whole), and so I thought I'd do it by defining the Extra_Flags option in my crosssite.def file in the following way: #define Extra_Flags -I/usr/X11R5/include -I/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.2/include Now, this does not appear anywhere on the compilation line at any time, ie Extra_Flags just doesn't seem to be picked up. And yes, I am remaking the Makefiles before I try this. I've got around this problem in the past by editing each Imakefile in each of the directories individually, adding the following two lines: IMAKE_INCLUDES=-I/usr/X11R5/include INCLUDES=-I/usr/X11R5/include -I/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.2/include and that has always worked. But it takes an age, and I don't want to have to keep doing this considering the rate that new versions are coming out! Am I using the Extra_Flags option incorrectly, and if not, can someone else verify that this option no longer works? Cheers, Sy Simon N. McIntosh-Smith, PhD candidate | Email : Simon.N.Smith@cm.cf.ac.uk Room M/1.36 Department of Computing Maths | Phone : +44 (0)222 874000 University of Wales, College of Cardiff | Fax : +44 (0)222 666182 PO Box 916, Cardiff, Wales, CF2 4YN, U.K. | Home : +44 (0)222 560522 Http : http://www.cm.cf.ac.uk:/People/Simon.Smith.html From crossfire-request Tue Mar 29 17:59:59 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 17:59:56 +0200 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.8.1+DND/4.5HUB) id KAA08012; Tue, 29 Mar 1994 10:59:51 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA20266; Tue, 29 Mar 94 11:00:33 -0500 Date: Tue, 29 Mar 94 11:00:33 -0500 From: Michael Glenn Message-Id: <9403291600.AA20266@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: CF: types.h vs Posix.h Status: RO Just got 0.90.4. Compiles great! One comment: In crossedit/Cnv/Cnv.h it says: /* sys/types.h needs to be included before Posix.h */ #include #include On my machine (NeXT) it is precisely the case that types.h needs to be defined AFTER Posix.h. If you define types.h before Posix.h, then _POSIX_SOURCE is not defined, and things like mode_t never get defined (in types.h), causing parse errors all over the place. To fix, just delete the types.h include in crossedit/Cnv/Cnv.h and all the .c files in crossedit. (I believe Posix.h includes types.h first, after defining _POSIX_SOURCE) Michael From crossfire-request Tue Mar 29 17:49:10 1994 Return-Path: Received: from phlem.ph.kcl.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 17:49:07 +0200 From: sjg@phlem.ph.kcl.ac.uk Received: by phlem.ph.kcl.ac.uk (5.65/DEC-Ultrix/4.3) id AA07957; Tue, 29 Mar 1994 16:56:45 +0100 Message-Id: <9403291556.AA07957@phlem.ph.kcl.ac.uk> To: crossfire@ifi.uio.no Cc: sjg@phlem.ph.kcl.ac.uk Subject: 0.90.4 and pixmaps ??? X-Mailer: exmh version 1.3beta 2/17/94 Date: Tue, 29 Mar 94 16:56:44 +0100 X-Mts: smtp Status: RO Hmm, just pulled 0.90.4 and tried compiling with the lines that define xpm compilation undefined, and indeed I see the cc lines as output by Make with the correct -DXpm_pix flag, but when I try 'crossfire -xpm' I get the error message "This version wasn't compiled with xpm". Any ideas??? Simon. From crossfire-request Tue Mar 29 17:13:51 1994 Return-Path: Received: from thrall.cm.cf.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 17:13:47 +0200 Received: from cm.cf.ac.uk by thrall.cm.cf.ac.uk with SMTP (PP) id <27995-0@thrall.cm.cf.ac.uk>; Tue, 29 Mar 1994 16:14:16 +0100 Date: Tue, 29 Mar 94 16:14:16 BST From: Simon McIntosh-Smith Message-Id: <9403291514.AA01950@garnet.cm.cf.ac.uk> To: crossfire@ifi.uio.no Subject: is there a plan? Status: RO Hi, having had to install 3 different versions of Crossfire in as many months, I was wondering if there was an actual plan of releases taking us up to the much-fabled 1.0 major release? Everyone has mentioned many changes they would like to make, bugs they would like to iron out etc, but is there a plan to it all? Is there any coordination? Is there a timetable? If we are not careful we will find ourselves talking about version 2.0 of crossfire being its first proper, fully public release, with versions in-between coming out one a fortnight! I've got to say though, great work everyone who has contributed. Crossfire is really something, and it just keeps getting better and better! Sy Oh, don't forget to check out the ALL NEW crossfire pages at Cardiff, which include on-line versions of all the documents that come with crossfire, including the spoilers and all the guides to playing and designing. The URL is http://www.cm.cf.ac.uk:/Crossfire/ Simon N. McIntosh-Smith, PhD candidate | Email : Simon.N.Smith@cm.cf.ac.uk Room M/1.36 Department of Computing Maths | Phone : +44 (0)222 874000 University of Wales, College of Cardiff | Fax : +44 (0)222 666182 PO Box 916, Cardiff, Wales, CF2 4YN, U.K. | Home : +44 (0)222 560522 Http : http://www.cm.cf.ac.uk:/People/Simon.Smith.html From crossfire-request Tue Mar 29 16:26:01 1994 Return-Path: Received: from mother.ludd.luth.se by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 16:26:00 +0200 Received: from vortex.sdf.luth.se (vortex.sdf.luth.se [130.239.144.1]) by mother.ludd.luth.se (8.6.8/8.6.6) with SMTP id QAA28763 for ; Tue, 29 Mar 1994 16:25:57 +0200 Received: from krikkit.sdf.luth.se ([130.239.144.11]) by vortex.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA02196; Tue, 29 Mar 94 16:21:51 +0200 Received: by krikkit.sdf.luth.se (4.1/SMI-4.1-SDF0.99) id AA29378; Tue, 29 Mar 94 16:22:06 +0200 From: Emil.Larsson@sdf.luth.se (Emil Larsson) Message-Id: <9403291422.AA29378@krikkit.sdf.luth.se> Subject: Crossfire problem To: crossfire@ifi.uio.no Date: Tue, 29 Mar 94 16:22:05 MET DST X-Mailer: ELM [version 2.3 PL0] Status: RO Hello !!!! I don't like to go down into the grass in Crossfire 0.90.3 HELP ME PLEASE !!!!!!!! -- name: Emil Larsson email: emil@sdf.luth.se Be wary of strong drinks. It can make you shoot at tax collectors and miss. From crossfire-request Tue Mar 29 07:20:06 1994 Return-Path: Received: from chalmers.se by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 07:20:06 +0200 Received: from quarl0.etek.chalmers.se by chalmers.se (5.60+IDA/3.14+gl) id AA21647; Tue, 29 Mar 94 07:20:04 +0200 From: Torbj|rn Lindgren Message-Id: <9403290520.AA03702@quarl0.etek.chalmers.se> Received: from kajsa0 by quarl0.etek.chalmers.se (6.14 (VSB)/3.14+gl) id AA03702; Tue, 29 Mar 94 07:20:03 +0200 Received: by kajsa0 (6.14 (VSB)/3.14+gl) id AA29963; Tue, 29 Mar 94 07:20:02 +0200 Subject: Re: Bitmaps problem in 0.90.3. To: crossfire@ifi.uio.no Date: Tue, 29 Mar 94 7:20:01 GMT-1:00 In-Reply-To: <199403290458.UAA18058@soda.berkeley.edu>; from "Philip Brown" at Mar 28, 94 8:58 pm X-Mailer: ELM [version 2.3 PL8] Status: RO > I'd like to point out that a new version of XPM hsa ben released, which > is suposedly incompatible with older versions. Well, according to the CHANGES file in Xpm 3.4 it isn't entirely compatible with 3.3. It IS source and binary compatible with Xpm 3.2 which is what most people have used. Most people that have compiled crossfire has probably used Xpm 3.2g. Even most people that have used special features from Xpm 3.3 should be able to recompile with only minor (or no) changes). From crossfire-request Tue Mar 29 08:57:45 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 08:57:42 +0200 Received: (from tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.8/8.6.6) id WAA09252; Mon, 28 Mar 1994 22:57:16 -0800 From: Tyler Van Gorder Message-Id: <199403290657.WAA09252@corpse.ecst.csuchico.edu> Subject: Re: some simple playing questions To: master@rahul.net (Mark Wedel) Date: Mon, 28 Mar 1994 22:57:16 -0800 (PST) Cc: crossfire@ifi.uio.no, lemke@ncd.com In-Reply-To: <199403290616.AA02303@bolero.rahul.net> from "Mark Wedel" at Mar 28, 94 10:16:22 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 586 Status: RO > estimate what level map it is, and send that information (anyone else > want to keep track of it?) The problem right now is, that the list > of dungeons seems incomplete at best, and 'low', 'mid', or 'high' level > dungeons is very subjective. Is high level level 15+ Level 25+? > Likewise, what is mid level? > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ I can look after that info......as most of the maps were built here and I know of several people that wish to continue to make maps but aren't sure what level to make them.......so if you want send your thoughts my way. :> Tyler From crossfire-request Tue Mar 29 08:16:58 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 08:16:52 +0200 Received: by bolero.rahul.net id AA02303 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 28 Mar 1994 22:16:22 -0800 Date: Mon, 28 Mar 1994 22:16:22 -0800 From: Mark Wedel Message-Id: <199403290616.AA02303@bolero.rahul.net> To: crossfire@ifi.uio.no, lemke@ncd.com Subject: Re: some simple playing questions Status: RO rust monsters/acid: One way is to take off your armor and weapons, and hope you can with stsand the damage (blast them with spells.) Dungeons: I don't really know. What I was going to post a week or so ago and forgot, is that as people explore various maps, they should estimate what level map it is, and send that information (anyone else want to keep track of it?) The problem right now is, that the list of dungeons seems incomplete at best, and 'low', 'mid', or 'high' level dungeons is very subjective. Is high level level 15+ Level 25+? Likewise, what is mid level? --MArk From crossfire-request Tue Mar 29 08:12:34 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 08:12:23 +0200 Received: by bolero.rahul.net id AA02061 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 28 Mar 1994 22:12:15 -0800 Date: Mon, 28 Mar 1994 22:12:15 -0800 From: Mark Wedel Message-Id: <199403290612.AA02061@bolero.rahul.net> To: crossfire@ifi.uio.no, dcook@maths.adelaide.edu.au Subject: Re: Bitmaps problem in 0.90.3. Status: RO The problem is likely that you have an old or incorrect version of the crossfire font in place. --Mark From crossfire-request Tue Mar 29 06:58:18 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 06:58:15 +0200 Received: (philb@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id UAA18058 for crossfire@ifi.uio.no; Mon, 28 Mar 1994 20:58:09 -0800 From: Philip Brown Message-Id: <199403290458.UAA18058@soda.berkeley.edu> Subject: Re: Bitmaps problem in 0.90.3. To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Mon, 28 Mar 1994 20:58:08 -0800 (PST) In-Reply-To: <9403290153.AA11039@spam.maths.adelaide.edu.au> from "David Cook" at Mar 29, 94 11:23:53 am X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 232 Status: RO I'd like to point out that a new version of XPM hsa ben released, which is suposedly incompatible with older versions. Due to some collaboration with the OSF, it is supposed to be "the shape of Xpm for years to come", so to speak. From crossfire-request Tue Mar 29 03:54:00 1994 Return-Path: Received: from spam.maths.adelaide.edu.au by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 03:53:56 +0200 Received: by spam.maths.adelaide.edu.au (5.64+1.3.1+0.50/UA-5.19) id AA11039; Tue, 29 Mar 1994 11:23:53 +0930 From: David Cook Message-Id: <9403290153.AA11039@spam.maths.adelaide.edu.au> Subject: Bitmaps problem in 0.90.3. To: crossfire@ifi.uio.no Date: Tue, 29 Mar 1994 11:23:53 +0930 (CST) X-Mailer: ELM [version 2.4 PL22] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 856 Status: RO Hello, I have only just joined this list, so don't know if this problem has come up before : I have just installed crossfire 0.90.3 on a Sparc 10/52, under SunOS 4.1.3. Apart from a minor problem with having an old XPM library, it compiled ok, and seemed to install ok. I also installed the 0.90.2 maps. The problem is : crossfire runs ok, and the maps seem ok, but with the wrong bitmaps - eg cobblestones appear as heads of some monster, a helmet appears as a flock of bats, etc. Can anyone tell me what is wrong, and how to fix it ? (if you reply quickly, I may not be subscribed to the list, so I would appreciate it if you could send a copy to my e-mail address (below) ). Thanks in advance, David T Cook e-mail: dcook@spam.adelaide.edu.au Phone: +61 8 303 5709 Assistant Computer Manager, Stats, Pure and Applied Maths, Adelaide Uni. From crossfire-request Tue Mar 29 01:19:50 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 01:19:46 +0200 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id PAA13506 for crossfire@ifi.uio.no; Mon, 28 Mar 1994 15:19:11 -0800 Date: Mon, 28 Mar 1994 15:19:11 -0800 From: Peter Mardahl Message-Id: <199403282319.PAA13506@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: new stat spell system Status: RO I tested trying to get my charisma from 21 to 30. It took 500sp nder the current system I've installed. Non-hacked characters aside, 500 spellpoints are very difficult to come by. That's 500 spellpoints worth of charisma spells I'm speaking of. Nobody's going to walk around with all their stats maxed by means of stat spells, unless they beat some very steep odds. PeterM From crossfire-request Mon Mar 28 23:58:46 1994 Return-Path: Received: from welch.ncd.com by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 28 Mar 1994 23:58:39 +0200 Received: from hemlock.ncd.com (root@hemlock.ncd.com [138.43.112.23]) by welch.ncd.com (8.6.7/8.6.6) with ESMTP id NAA28116 for ; Mon, 28 Mar 1994 13:58:29 -0800 Received: from localhost.ncd.com (lemke@localhost.ncd.com [127.0.0.1]) by hemlock.ncd.com (8.6.5/8.6.5.Beta11) with SMTP id NAA27174 for ; Mon, 28 Mar 1994 13:58:28 -0800 Message-Id: <199403282158.NAA27174@hemlock.ncd.com> X-Authentication-Warning: hemlock.ncd.com: Host localhost.ncd.com didn't use HELO protocol To: crossfire@ifi.uio.no Subject: some simple playing questions Reply-to: lemke@ncd.com Organization: Network Computing Devices, Mountain View, CA Date: Mon, 28 Mar 1994 13:58:28 PST From: Dave Lemke Status: RO i've been playing (on my own) for a couple weeks now, and i need some hints for things i haven't found in the spoilers: - how does one deal with rust monsters and puddings? are their armor/weapon protect spells somewhere? - what are some good medium-level dungeons (i'm 7th level)? i've done most everything mentioned in the central square lists, and gotten toasted a few times in Santo Dominion. i'm using the maps that are with the dist -- i've seen mention of some Chico maps, should i use those instead? - is there a spoiler list somewhere of what weapons are best? i've seen the damage/weight/speed charts, but what ends up being the best for most players? - are there places to search for quality weapons/armor? i'd also like to see more docs on starting out: suggestions on race, character class, etc. Dave From crossfire-request Sat Mar 26 10:39:24 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Sat, 26 Mar 1994 10:39:20 +0100 Received: by bolero.rahul.net id AA19814 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Sat, 26 Mar 1994 01:39:14 -0800 Date: Sat, 26 Mar 1994 01:39:14 -0800 From: Mark Wedel Message-Id: <199403260939.AA19814@bolero.rahul.net> To: crossfire@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: xpm pixmap mode over the net Status: RO XPM building can take a very long time. IT depends on the server and the speed of the connection. Building XPM images over direct ethernet is quite fast. If you have a fast link to the destination, I would say it would also be reasonable. Also, some servers may have local ethernet players, who want to use the X Pixmaps. And of course, there is nothing forcing a person to use the XPM images when they connect to a server. They can still use fonts or the older pixmaps. Although, there was a bug that seemed to start clients who did not specify what they want in X Pixmap mode. From crossfire-request Sat Mar 26 10:28:51 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Sat, 26 Mar 1994 10:28:47 +0100 Received: by bolero.rahul.net id AA19539 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Sat, 26 Mar 1994 01:28:38 -0800 Date: Sat, 26 Mar 1994 01:28:38 -0800 From: Mark Wedel Message-Id: <199403260928.AA19539@bolero.rahul.net> To: crossfire@ifi.uio.no, schmid@fb3-s7.math.tu-berlin.de Subject: Re: unlock door spell and some map suggestions Status: RO A 'knock' spell is a reasonable idea. I've also had the idea of adding a 'locksmith' shop, which just has a lot of normal keys in it. If you have the money, you can just buy a whole bunch of them. Independant maps with auto return: In general, it should not be too hard to just put the exits in properly. Although, the random encounter maps return automatically, so I would guess that most of the code is in place to do that. --Mark From crossfire-request Sat Mar 26 01:04:49 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Sat, 26 Mar 1994 01:04:46 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id QAA18049 for crossfire@ifi.uio.no; Fri, 25 Mar 1994 16:04:39 -0800 Date: Fri, 25 Mar 1994 16:04:39 -0800 From: Peter Mardahl Message-Id: <199403260004.QAA18049@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: xpm pixmap mode over the net Status: RO I recently tried to connect remotely to tyler's server in chico. It took about an hour before the xpm window finally popped up on my display. Is this type of performance typical over the net? If so, then anyone running a public server should compile it only without pixmaps.... Regards, PeterM From crossfire-request Fri Mar 25 21:57:15 1994 Return-Path: Received: from cardhu.cs.hut.fi by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 25 Mar 1994 21:57:15 +0100 Received: by cardhu.cs.hut.fi id AA07755 (5.65c8/HUTCS-C 1.3 for ); Fri, 25 Mar 1994 22:53:40 +0200 Date: Fri, 25 Mar 1994 22:53:40 +0200 Message-Id: <199403252053.AA07755@cardhu.cs.hut.fi> From: Tero Kivinen To: Gregor Schmid Cc: Subject: unlock door spell and some map suggestions In-Reply-To: <199403251501.AA01943@fb3-s7.math.tu-berlin.de> References: <199403251501.AA01943@fb3-s7.math.tu-berlin.de> Organization: Helsinki University of Technology/Lifelong Learning Institute Dipoli Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="iso-8859-1" Status: RO Gregor Schmid writes: > how about a new spell: Unlock door > Will only work with standard doors, not with those that need special > keys. Should be low level (say 2) but expensive (~ 10 sp). > The reason is that a low level mage can hack on those doors for a long > time (there seems to be a lack of keys on some maps recently). > If someones would like to implement it, pleas do. I already implemented this for some old version, but I haven't had time to patch the code to new version. I also included "lock door" and "undoor" spells. The unlock door works so it will remove 500 hitpoins from door and raise its ac by 10. Lock will do the reverse (add 500 hps and lower its ac by 10). Undoor will just remove the door. They only worked for normal doors, not LOCKED_DOORS or gates etc. I will try to patch them to current version and send patches, but it may take some time (I have lots of work to do currently). -- Tero.Kivinen@hut.FI Work : +358-0-451 4032 Magnus Enckellin kuja 9 K 19, 02610, Espoo Home : +358-0-502 1573 From crossfire-request Fri Mar 25 21:24:47 1994 Return-Path: Received: from mailgzrz.TU-Berlin.DE by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 25 Mar 1994 21:18:02 +0100 Received: from fb3-s7.math.TU-Berlin.DE by mailgzrz.TU-Berlin.DE (5.65c/ZRZ-MX) for id AA13956; Fri, 25 Mar 1994 16:01:59 +0100 Received: from fb3-s10.math.TU-Berlin.DE by fb3-s7.math.tu-berlin.de with SMTP id AA01943 (5.65c/IDA-1.4.4 for ); Fri, 25 Mar 1994 16:01:56 +0100 Date: Fri, 25 Mar 1994 16:01:56 +0100 From: Gregor Schmid Message-Id: <199403251501.AA01943@fb3-s7.math.tu-berlin.de> To: crossfire@ifi.uio.no Subject: unlock door spell and some map suggestions Status: RO Hi folks, how about a new spell: Unlock door Will only work with standard doors, not with those that need special keys. Should be low level (say 2) but expensive (~ 10 sp). The reason is that a low level mage can hack on those doors for a long time (there seems to be a lack of keys on some maps recently). If someones would like to implement it, pleas do. Now for s.th. completely different: In order to be able to design new small, independent maps it would be very useful to have a RETURN_TO_WHERE_YOU_CAME_FROM kind of exit. When you enter that map all exits of that kind will be set to the place you came from. That should not be used to make maps accessible from different places though, as you would have to keep track of the exit for each player. It would just make building a city out of some independent maps a LOT easier, just make an exit point there, BINGO. Thus it would be easier for different servers to have different worlds, as there are a lot of maps that could be changed to have those exits (basically all buildings). Regards, Greg From crossfire-request Fri Mar 25 14:40:30 1994 Return-Path: Received: from surt.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Fri, 25 Mar 1994 14:40:30 +0100 From: Frank Tore Johansen Received: by surt.ifi.uio.no ; Fri, 25 Mar 1994 14:40:28 +0100 Message-Id: <199403251340.20287.surt.ifi.uio.no@ifi.uio.no> Subject: Re: CF: alt.games.crossfire? To: crossfire@ifi.uio.no Date: Fri, 25 Mar 1994 14:40:27 +0100 (MET) In-Reply-To: <199403250027.AA05924@eden-valley.aaii.oz.AU> from "Rupert G. Goldie" at Mar 25, 94 10:27:33 am X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 812 Status: RO The best thing would be to wait until we're sure we have a continual high flow, and then create either rec.games.crossfire or rec.games.roguelike.crossfire. Probably the first. I had originally planned to put out the CFV around v1.0, after _posting_ the sources, but will there ever be a 1.0...? Anyway, it's better to take the time to get a rec.games.* group than to create a group below alt.games instantly. And such a CFV should be posted maybe a week after releasing a fairly stable version. If the release announcement is copied to alt.sources.d and maybe rec.games.programmer or rec.games.misc, 100++ votes are assured. Maybe a version could be posted to comp.sources.games before 1.0? The sources should look somewhat tidy first though, a "few" hacks that shouldn't be there comes to mind... -Frank. From crossfire-request Fri Mar 25 06:36:09 1994 Return-Path: Received: from edison.eng.auburn.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Fri, 25 Mar 1994 06:36:06 +0100 Received: from lab15.eng.auburn.edu (lab15.eng.auburn.edu [131.204.11.15]) by edison.eng.auburn.edu (8.6.4/8.6.4) with ESMTP id XAA01624 for ; Thu, 24 Mar 1994 23:35:53 -0600 Received: from localhost (dyessww@localhost) by lab15.eng.auburn.edu (8.6.4/8.6.4) id XAA14821; Thu, 24 Mar 1994 23:35:53 -0600 Date: Thu, 24 Mar 1994 23:33:55 -0600 (CST) From: "William W. Dyess" Sender: "William W. Dyess" Reply-To: "William W. Dyess" Subject: Re: magic and fighters To: crossfire@ifi.uio.no In-Reply-To: <199403220011.QAA14201@soda.berkeley.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Status: RO > If you're wearing a tin can, your spells should fail more often. I would > MUCH rather see this built in to the code than trying to hard-code > distinctions between classes. Hear hear! There's no reason that spell casters shouldn't be able to wear armour, nor any reason that warriors shouldn't be able to learn spells. Spell failure, or some sort of spell power reduction is a good idea. Maybe, to help out lower level players, have something where your spell casting level is 1/2 normal when wearing armour. Perhaps have the percentage vary by armour type. > Why does everyone hate the concept of the Renaissance Man so much? > What's wrong with one player being very, very good at two different things? > Koss, that ice skater from Norway, won some gold medals and is also in > medical school. Why should we hard-code it so that players like Koss are > impossible? It happens in real life, but we want to make it impossible > in a fantasy game? > > It is sufficient to build in a greater chance of spell failure > if you're wearing too much garbage. Prayers should be immune to this. > This is also much easier than building in class distinctions. > > I really disagree with the idea that you should always be what you start > as. I think you should be what you are good at. Comon, a fighter who has > a strength of 16 and an int of 25 should be played like a wizard, not > like a fighter. And with an int of 25, he should be a damned good wizard, > not crippled because he bears the arbitrary label 'fighter'. > > I DO agree that a person should not be both a good fighter and > a good magician at the same instant. I do not think Koss could wear ice > skates and do surgery at the same time. > > Similarly, a player should not be able to wear armor and swing a sword > around and cast spells at the same time, at least not very successfully. > > I think that's a much better way of doing it than having 'classes'. > What needs to be done: > > 1) Build in spell failure dependent on armour worn and weapons wielded > 2) Make it MUCH more expensive in time to take armour on and off. > > I will eventually do these things if no one does them first. > >PeterM Are you planning on having a system where a player can switch from class to class or one where he gains experience in a class based on his actions? It seems silly to award experience to a Wizard for killing monsters with a club. --Bill From crossfire-request Fri Mar 25 01:29:09 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Fri, 25 Mar 1994 01:28:34 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA05924; Fri, 25 Mar 1994 10:27:33 +1000 Date: Fri, 25 Mar 1994 10:27:33 +1000 From: "Rupert G. Goldie" Message-Id: <199403250027.AA05924@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no Subject: Re: CF: alt.games.crossfire? Status: RO > Good idea! But I suggest that the newsgroup should be used for questions about > the game, maps and so on, and keep all developpers stuff on the mailing list. > That's because some of the developpers don't have the News running (I didn't, > until a few days ago). This will also reduce the load on the mailing list (I > have to filter my mail to keep "interesting" messages and skip the ones that > are only related to how the game should be played, how to build a better map, > etc.) > We definitely want a separate developers' mailing list - you get a more immediate response and the signal to noise ratio will be much higher (this is the most important reason - mailing lists which have become newsgroups always get more crap flowing through them). A separate alt.games.crossfire is probably a good idea for player discussions and advertising the game. Rupert From crossfire-request Fri Mar 25 00:10:29 1994 Return-Path: Received: from pathogen.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Fri, 25 Mar 1994 00:10:24 +0100 Received: (from dtabb@localhost) by pathogen.ecst.csuchico.edu (8.6.8/8.6.6) id PAA07884 for crossfire@ifi.uio.no; Thu, 24 Mar 1994 15:10:16 -0800 From: Don Tabb Message-Id: <199403242310.PAA07884@pathogen.ecst.csuchico.edu> Subject: Re: new news group? To: crossfire@ifi.uio.no Date: Thu, 24 Mar 1994 15:10:16 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 464 Status: RO Forwarded message: > ok. I want to create a new news group.. how do I do it? who do I > bug? what forms do I fill out? First, you go out on alt.config and wait for the instructions to go by. While you're waiting, pay attention and watch everyone get their heads chewed off. Don't do what they're doing. (: Not rushing it is very important. Really. Not rushing things will get your group propagated far and wide, if you're lucky. don From crossfire-request Thu Mar 24 22:29:10 1994 Return-Path: <<@vm1.ulg.ac.be:quinet@montefiore.ulg.ac.be>> Received: from vm1.ulg.ac.be by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 22:29:08 +0100 Received: from montefiore.ulg.ac.be by vm1.ulg.ac.be (IBM VM SMTP V2R2) with TCP; Thu, 24 Mar 94 22:27:42 +0100 Received: from verif6.montefiore.ulg.ac.be by montefiore.ulg.ac.be (4.1/SMI-4.1) id AA25131; Thu, 24 Mar 94 22:28:58 +0100 Date: Thu, 24 Mar 94 22:28:58 +0100 From: quinet@montefiore.ulg.ac.be (Raphael Quinet) Message-Id: <9403242128.AA25131@montefiore.ulg.ac.be> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: CF: alt.games.crossfire? Status: RO > From: Michael Glenn > Considering the volume of messages in the last couple of months, perhaps a newsgroup is in order? It would > also serve as advertisement for the game. :) What do people think? And is there anyone who knows how to get > a new group started? > Good idea! But I suggest that the newsgroup should be used for questions about the game, maps and so on, and keep all developpers stuff on the mailing list. That's because some of the developpers don't have the News running (I didn't, until a few days ago). This will also reduce the load on the mailing list (I have to filter my mail to keep "interesting" messages and skip the ones that are only related to how the game should be played, how to build a better map, etc.) If you're looking for info about how to start a new group, you'll find some in the distribution of most news readers and NNTP servers. It souldn't be too hard, but you must have a host with a lot of free disk space... -Raphael From crossfire-request Thu Mar 24 22:10:46 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 22:10:25 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id NAA16138; Thu, 24 Mar 1994 13:10:13 -0800 Date: Thu, 24 Mar 1994 13:10:13 -0800 From: Peter Mardahl Message-Id: <199403242110.NAA16138@soda.berkeley.edu> To: crossfire@ifi.uio.no, fermat@fermat.dartmouth.edu Subject: Re: CF: alt.games.crossfire? Status: RO I would very much like to see a newsgroup. That would allow threading, among other things.... I haven't got mh figured out yet. (Should do that soon, sigh...) Supposedly, one posts to alt.config about the group, and asks a local net administrator to do it.... (create it for you) From crossfire-request Thu Mar 24 21:17:52 1994 Return-Path: Received: from dartvax.dartmouth.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 21:17:49 +0100 Received: from fermat.dartmouth.edu by dartvax.dartmouth.edu (8.6.5.Beta11+DND/4.5HUB) id PAA27574; Thu, 24 Mar 1994 15:17:45 -0500 Received: by fermat.dartmouth.edu (NX5.67d/NX3.0S) id AA03712; Thu, 24 Mar 94 15:18:30 -0500 Date: Thu, 24 Mar 94 15:18:30 -0500 From: Michael Glenn Message-Id: <9403242018.AA03712@fermat.dartmouth.edu> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: crossfire@ifi.uio.no Subject: CF: alt.games.crossfire? Status: RO Crossfire people: Considering the volume of messages in the last couple of months, perhaps a newsgroup is in order? It would also serve as advertisement for the game. :) What do people think? And is there anyone who knows how to get a new group started? Michael From crossfire-request Thu Mar 24 15:02:45 1994 Return-Path: Received: from thorin.research.natpower.co.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 15:02:43 +0100 Received: by research.natpower.co.uk (AIX 3.2/UCB 5.64/4.03) id AA29339; Thu, 24 Mar 1994 14:00:44 GMT From: sadlerr@research.natpower.co.uk (RobertSadler) Posted-Date: Thu, 24 Mar 1994 14:00:44 +0000 (GMT) Message-Id: <9403241400.AA29339@research.natpower.co.uk> Subject: Font problem To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Thu, 24 Mar 1994 14:00:44 +0000 (GMT) X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 597 Status: RO I wonder if anyone can help: I have built crossfire under AIX and have installed the crossfire.pcf font on my xserver. crossfire runs up, but seems to be picking the wrong characters for the map window - it looks like garbage - I am getting a dragons head instead of cobblestones - any thoughts, or is it just an incompatibility with my X server, which normally copes with fonts ok. The xserver is not up to the pixmap version at all. Thanks in advance Rob -- Rob Sadler | sadlerr@research.natpower.co.uk | sadlerr@spencer.demon.co.uk (home) From crossfire-request Thu Mar 24 14:09:42 1994 Return-Path: Received: from ild.alkymi.unit.no by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 14:09:41 +0100 Received: from jord.alkymi.unit.no by ild.alkymi.unit.no with SMTP id AA09288 (5.65c/IDA-1.4.4 for ); Thu, 24 Mar 1994 14:09:29 +0100 From: Inge Berg Fenstad Received: by jord.alkymi.unit.no ; Thu, 24 Mar 1994 14:10:02 +0100 Message-Id: <199403241310.AA11679@jord.alkymi.unit.no> Subject: Crashes of server To: roy@eckerd.edu (Jonathan Roy) Date: Thu, 24 Mar 1994 14:10:01 +0100 (MET) Cc: crossfire@ifi.uio.no In-Reply-To: <9403240304.AA10920@acasun.eckerd.edu> from "Jonathan Roy" at Mar 23, 94 10:04:53 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 534 Status: RO Hi I have experienced three things that make crossfire crash or bug in servermode 1: When a person enter the game at the same time as a persom enters an exit This crashes the game 2: The game bugs sometimes and make all exits from a map closed OR teleport a person to a far off place..often at sea when he cannot escape. 3: The game crashes when a persom 'doubledies'. He prob. doubledie when there is done too many damages to him at one time, like fireball. I hope these bugs will been fixed in the next version ! Inge From crossfire-request Thu Mar 24 07:23:32 1994 Return-Path: Received: from castor.cc.utu.fi by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 07:23:31 +0100 Received: by utu.fi id <165474-1>; Thu, 24 Mar 1994 08:23:27 +0200 Subject: Re: Map problems in server mode. From: Tero Jyri Michael Pelander To: crossfire@ifi.uio.no Date: Thu, 24 Mar 1994 08:23:22 +0200 Reply-To: crossfire@ifi.uio.no In-Reply-To: <9403240304.AA10920@acasun.eckerd.edu> from "Jonathan Roy" at Mar 23, 94 07:04:53 pm MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7BIT Content-Length: 813 Message-Id: <94Mar24.082327eet.165474-1@utu.fi> Status: RO From: roy@eckerd.edu (Jonathan Roy) >I don't know if it's the disappearing map problem, or what, but sometimes >when the server is up and has been used heavily, you enter a map and >every exit says 'the exit is closed', and you get trapped. :( At least I have noticed that every time that one of the players dies and there are others on the same map they can no longer use any exits. Also once one of the players (me) entered an exit followed by an other player. For some reason the entering took very long time. When he tried to leave the exits vere closed. The savefile made there listed the map as /city/tower/tower. That was totally wrong (it was in Navar the undead quest tower). As an other player entered the /city/tower/tower (=newbie tower) he got to the same place as my character did. And no exits. From crossfire-request Thu Mar 24 04:58:55 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 04:58:48 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id TAA21247; Wed, 23 Mar 1994 19:58:36 -0800 From: Philip Brown Message-Id: <199403240358.TAA21247@soda.berkeley.edu> Subject: Re: broken pipes To: tvangod@ecst.csuchico.edu (Tyler Van Gorder) Date: Wed, 23 Mar 1994 19:58:35 -0800 (PST) Cc: crossfire@ifi.uio.no In-Reply-To: <199403240242.SAA10526@corpse.ecst.csuchico.edu> from "Tyler Van Gorder" at Mar 23, 94 06:42:26 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 1706 Status: RO >>>>[From Tyler Van Gorder] hmmm, Mark you said that this problem had been fixed? I seem to still be getting broken pipes when in server mode a person is coming in...and another person is entering an exit. yeah, pipe problems are ikcy. presuming that it's related to just the plain old "display connection lost " problem... I fixed the problem with soda's server a long time ago, in crossedit 0.5 or something. I submitted the patches to frank but obviously they didn't get used. I have stopped working on actual code now, so I think the changes might have disappeared in the latest upgrade that soda folks did, presuming they abandonded the old code. As far as I remember, you have to fiddle with the part about XIOErrorHandler. Xt is simply NOT happy about using multiple displays, a reason which makes me support client/server very strongly. The problem being that for some stupid reason, when a display connection dies, a SIGPIPE signal is sent to the client. The status quo of handling it at the time was using setjmp. It was making the wrong calls to continue the program, so I cleaning it up as best I could, but it was very messy, and not 100% stable, since the setjmp was not in a good place. (the stack nesting, etc, was bad bad bad) The following is the product of a mind without enough sleep.. beware... On reflection, there might be some gain to putting in a setjmp at another cleaner position, and having the Xerrorhandler send a USR1, to have another handler jump to the better place... Oh wait, now I remember the problem. The mucho grande problem: Xt expects the Xerror signal handler NEVER TO RETURN. If it does, the program dies!!! Philip From crossfire-request Thu Mar 24 14:24:47 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 14:24:44 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA14107; Thu, 24 Mar 1994 08:21:13 +0500 Date: Thu, 24 Mar 1994 08:21:13 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403241321.AA14107@acasun.eckerd.edu> To: Inge.Fenstad@alkymi.unit.no, roy@eckerd.edu Subject: Re: Crashes of server Cc: crossfire@ifi.uio.no Content-Length: 321 Status: RO 2: The game bugs sometimes and make all exits from a map closed OR teleport a person to a far off place..often at sea when he cannot escape. This happens often, to us, if we run to Santo Dominion. If we just walk, it's pretty safe. (Out the gatehouse, up the road...) Running likes to put up on the all water map... From crossfire-request Thu Mar 24 03:42:42 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 03:42:31 +0100 Received: (from tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.8/8.6.6) id SAA10526 for crossfire@ifi.uio.no; Wed, 23 Mar 1994 18:42:26 -0800 From: Tyler Van Gorder Message-Id: <199403240242.SAA10526@corpse.ecst.csuchico.edu> Subject: broken pipes To: crossfire@ifi.uio.no Date: Wed, 23 Mar 1994 18:42:26 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 498 Status: RO hmmm, Mark you said that this problem had been fixed? I seem to still be getting broken pipes when in server mode a person is coming in...and another person is entering an exit. how did you fix this problem? and was that fix in .90.3? thanks Tyler. by the way....the "disappearing maps" thing may be attributed to not having enough memory! ack.....is crossfire a memory hog now..with color pixmaps? how can one check how much of an xterm's memory that crossfire is using? thanks Tyler. From crossfire-request Thu Mar 24 04:08:13 1994 Return-Path: Received: from acasun.eckerd.edu by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Thu, 24 Mar 1994 04:08:09 +0100 Received: by acasun.eckerd.edu (5.0/SMI-SVR4) id AA10920; Wed, 23 Mar 1994 22:04:53 +0500 Date: Wed, 23 Mar 1994 22:04:53 +0500 From: roy@eckerd.edu (Jonathan Roy) Message-Id: <9403240304.AA10920@acasun.eckerd.edu> To: crossfire@ifi.uio.no Subject: Map problems in server mode. Content-Length: 206 Status: RO I don't know if it's the disappearing map problem, or what, but sometimes when the server is up and has been used heavily, you enter a map and every exit says 'the exit is closed', and you get trapped. :( From crossfire-request Wed Mar 23 11:29:09 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 23 Mar 1994 11:29:04 +0100 Received: by bolero.rahul.net id AA09497 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Wed, 23 Mar 1994 02:25:14 -0800 Date: Wed, 23 Mar 1994 02:25:14 -0800 From: Mark Wedel Message-Id: <199403231025.AA09497@bolero.rahul.net> To: crossfire@ifi.uio.no, tvangod@ecst.csuchico.edu Subject: Re: sections of maps Status: RO The bug with the game crashing while starting up and someone leaving an exit has been fixed. REally, it was just a problem with broken pipes. That message would cause crossclient to close the connection, causing a broken pipe, which would then crash the game. The fixes were twofold: First, ignore broken pipes. IT looks like crossfire can handle them quite nicely. Second, when crossclient is adding someone, it sets the listen value to the socket to 0, so it will not get any of those messages. --Mark From crossfire-request Wed Mar 23 10:23:25 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Wed, 23 Mar 1994 10:23:24 +0100 From: =?iso-8859-1?Q?Bj=F8rn_Georg_Ludvigsen?= MIME-Version: 1.0 Received: by holmenkollen.ifi.uio.no ; Wed, 23 Mar 1994 10:23:23 +0100 Date: Wed, 23 Mar 1994 10:23:21 +0100 To: Peter Mardahl Cc: crossfire@ifi.uio.no Subject: Re: magic and fighters In-Reply-To: Peter Mardahl 's message of Mon, 21 Mar 1994 16:11:26 -0800 References: <199403220011.QAA14201@soda.berkeley.edu> Message-ID: Status: RO > I think that's a much better way of doing it than having 'classes'. I agree. >What needs to be done: >1) Build in spell failure dependent on armour worn and weapons wielded realwis := ((100-armor)/100)*wis >2) Make it MUCH more expensive in time to take armour on and off. I totally agree. Like say 5 for a robe, 15 for leather/ring/scale, 25 for chain, 40 for plate/dragonmail. >3) have spell failures do various amusing things. I've always wondered (hah! [whack]) about the wonder-spell. What's it REALLY for? Amusement? Judging by the effects of it, it's spell failures reincarnated. - Regards, Bjorn. From crossfire-request Wed Mar 23 10:09:25 1994 Return-Path: Received: from corpse.ecst.csuchico.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Wed, 23 Mar 1994 10:09:21 +0100 Received: (from tvangod@localhost) by corpse.ecst.csuchico.edu (8.6.8/8.6.6) id BAA26504 for crossfire@ifi.uio.no; Wed, 23 Mar 1994 01:09:11 -0800 From: Tyler Van Gorder Message-Id: <199403230909.BAA26504@corpse.ecst.csuchico.edu> Subject: sections of maps To: crossfire@ifi.uio.no Date: Wed, 23 Mar 1994 01:09:11 -0800 (PST) X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 674 Status: RO hmmm....something that has been occurring on a regular basis here...is maps once loaded...have sections of them that simple look like they havent been loaded.....?????? literally the last 1/3 of the map on the right hand side just isnt around.........players can walk onto the area.......no probs..and as long as the exit was not on that 1/3 of the map..they can leave....SO... what is going on here? anyone had this problem???? The other bug fix I would like to see is the one in which the server will crash when someone is entering the game and another players leaves an exit.. I haven't had time to hunt down and fix these things.......hopefully..will soon Tyler. From crossfire-request Wed Mar 23 06:53:22 1994 Return-Path: Received: from po5.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Wed, 23 Mar 1994 06:53:13 +0100 Received: from localhost (postman@localhost) by po5.andrew.cmu.edu (8.6.4/8.6.4) id AAA17413 for crossfire@ifi.uio.no; Wed, 23 Mar 1994 00:52:01 -0500 Received: via switchmail; Wed, 23 Mar 1994 00:52:00 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Wed, 23 Mar 1994 00:51:39 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Wed, 23 Mar 1994 00:51:32 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Wed, 23 Mar 1994 00:51:32 -0500 (EST) Message-ID: Date: Wed, 23 Mar 1994 00:51:32 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: The crossfire meta-server CC: crossfire@ifi.uio.no In-Reply-To: <199403230522.24207.holmenkollen.ifi.uio.no@ifi.uio.no> References: <199403230522.24207.holmenkollen.ifi.uio.no@ifi.uio.no> Status: RO Kjetil Torgrim Homme writes: > Err, why can't I just do > echo who | mconnect madhatter.ws.cc.cmu.edu -p 13326 | tail +3 > instead? You could, but that wouldn't tell you anything about the other servers. > A metaserver is something different - all Crossfire servers should > notify the metaserver once in a while. Users can then access the > metaserver to get a list of active servers and perhaps how many > players there is one them. Bingo, that's what this does. Each crossfire server is connected to a meta-server, and they all share information on who is up, and how many players are playing. Right now, with only one person running the meta server, no one else gets listed. Big surprise that, no other server is telling the meta server's they exist. Once everyone who runs a server joins in, then the information will propogate around. Moreover, if one of the meta-servers goes down, it's not a problem, just contact one of the other ones. -- Ah, I understand, my initial posting forgot to mention that once other people run the meta-server, they will all communicate. Sorry for failing to mention that. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Wed Mar 23 06:25:53 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Wed, 23 Mar 1994 06:25:53 +0100 From: Kjetil Torgrim Homme Received: by holmenkollen.ifi.uio.no ; Wed, 23 Mar 1994 06:25:52 +0100 Date: Wed, 23 Mar 1994 06:25:52 +0100 Message-Id: <199403230525.24215.holmenkollen.ifi.uio.no@ifi.uio.no> To: eanders+@CMU.EDU CC: crossfire@ifi.uio.no In-reply-to: "Eric A. Anderson"'s message of Wed, 23 Mar 1994 00:06:29 -0500 (EST) Subject: Re: The crossfire meta-server Status: RO Sorry all, I really ought to learn to read. Kjetil T. From crossfire-request Wed Mar 23 06:22:19 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Wed, 23 Mar 1994 06:22:18 +0100 From: Kjetil Torgrim Homme Received: by holmenkollen.ifi.uio.no ; Wed, 23 Mar 1994 06:22:16 +0100 Date: Wed, 23 Mar 1994 06:22:16 +0100 Message-Id: <199403230522.24207.holmenkollen.ifi.uio.no@ifi.uio.no> To: eanders+@CMU.EDU CC: crossfire@ifi.uio.no In-reply-to: "Eric A. Anderson"'s message of Wed, 23 Mar 1994 00:06:29 -0500 (EST) Subject: Re: The crossfire meta-server Status: RO Err, why can't I just do echo who | mconnect madhatter.ws.cc.cmu.edu -p 13326 | tail +3 instead? (mconnect is just a variant of telnet) A metaserver is something different - all Crossfire servers should notify the metaserver once in a while. Users can then access the metaserver to get a list of active servers and perhaps how many players there is one them. To see how the xpilot metaserver works, connect to xpilot.cs.uit.no 4400 Kjetil T. From crossfire-request Wed Mar 23 06:08:17 1994 Return-Path: Received: from po2.andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Wed, 23 Mar 1994 06:08:14 +0100 Received: from localhost (postman@localhost) by po2.andrew.cmu.edu (8.6.4/8.6.4) id AAA22898 for crossfire@ifi.uio.no; Wed, 23 Mar 1994 00:07:57 -0500 Received: via switchmail; Wed, 23 Mar 1994 00:07:56 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Wed, 23 Mar 1994 00:06:39 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Wed, 23 Mar 1994 00:06:30 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Wed, 23 Mar 1994 00:06:29 -0500 (EST) Message-ID: Date: Wed, 23 Mar 1994 00:06:29 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: The crossfire meta-server Status: RO The projenitor of the first crossfire server now brings forth YAPH (Yet Another Perl Hack). Yes, it's the MetaServer. Try telnetting to madhatter.ws.cc.cmu.edu 8245 You can find out how many people are currently playing on my server. Of course the game is so slow remotely, it's unlikely anyone will be playing, but hey, you never know. What do you need to do this? The new version of crossloop.pl Available from madhatter.ws.cc.cmu.edu:pub/crossfire The patches to the server which cause it to output useful information so I can track when people come in and out of the game. They are available as metaserv.diff from the same place. You need to change some of the variables at the top of the crossloop.pl program to point to the right places in your installation. You need to put tcplib.pl and gensym.pl in the crossfire lib directory. Those two files are in the utils directory of the latest distribution. Once you set it up, your meta server should automagically contact my meta server and they will begin communicating. Has this been well tested? No. If it works, please send me mail. If you have problems, send me mail. It is likely that the metaserver will get confused about the number of players from time to time. I haven't decided the best way of keeping this information correct. Good luck, and enjoy the new toy. Don't ask how I got the port number. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Wed Mar 23 01:36:02 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Wed, 23 Mar 1994 01:35:26 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA16555; Wed, 23 Mar 1994 10:34:29 +1000 Date: Wed, 23 Mar 1994 10:34:29 +1000 From: "Rupert G. Goldie" Message-Id: <199403230034.AA16555@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, smurf@soda.berkeley.edu Subject: Re: magic and fighters Status: RO > PS: I think Crossfire needs its own mythology. > Coincidentally enough, I've been working on one 8-) I would like to also add game effects to go with it so that praying and sacrificing to particular deities brings you possible benefits. Rupert From crossfire-request Wed Mar 23 01:14:20 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Wed, 23 Mar 1994 01:14:14 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id QAA28789 for crossfire@ifi.uio.no; Tue, 22 Mar 1994 16:14:09 -0800 From: Philip Brown Message-Id: <199403230014.QAA28789@soda.berkeley.edu> Subject: Re: magic and fighters To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Tue, 22 Mar 1994 16:14:07 -0800 (PST) In-Reply-To: <199403222241.AA18250@enstb.enst-bretagne.fr> from "HUGUET Guillaume" at Mar 22, 94 11:41:40 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 350 Status: RO PS: DO press return at the end of a line, please?!!! >>>>[From HUGUET Guillaume] We come back to RPGs.... A lonely player should be able to go anywhere,... WHY? a first-level player should not go into "Castle of DOOM". Similarly, an ill-equipped or trained player should not poke his nose where it shouldn't go. From crossfire-request Tue Mar 22 23:41:36 1994 Return-Path: Received: from melimelo.enst-bretagne.fr by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 23:41:35 +0100 Received: from enstb.enst-bretagne.fr by melimelo.enst-bretagne.fr (5.67b8/090294); Tue, 22 Mar 1994 23:39:41 +0100 Received: from cauchy.enst-bretagne.fr by enstb.enst-bretagne.fr (5.65c8/180193); Tue, 22 Mar 1994 23:41:40 +0100 Date: Tue, 22 Mar 1994 23:41:40 +0100 From: huguet@enstb.enst-bretagne.fr (HUGUET Guillaume) Message-Id: <199403222241.AA18250@enstb.enst-bretagne.fr> To: crossfire@ifi.uio.no Subject: Re: magic and fighters X-Charset: LATIN1 X-Char-Esc: 29 Status: RO from Scott MacFiggen > I personally hate the idea of classes period. They are >way too generic and general. Have you guys ever played Warhammer FRP? >Instead of using classes they use Careers. Basically everybody has >a job or had a job that payed the bills in between adventures. Your >job dictated what staring skills you have, what attributes you can raise, >and what equipment you get. Its a bit late for this but its an idea. We come back to RPGs. The problem is that crossfire maps require all kinds of skills (some monsters are almost immuned to magic and others quite hard to beat without spellcasting). A lonely player should be able to go anywhere, whereas Role Playing Games like AD&D or Warhammer involve a group of adventurers having each his own skills. I enjoyed the Warhammer's Carreers system but in fact players always developp the same kind of skills by upgrading in the job hierarchy. On the other hand, allowing radical class changes would be the same as having no class distinction. I thing we can't avoid the class system as it is now. We can just make it harder for barbarians to be good spellcasters and for wizards to be good fighters. I think too powerfull weapons make the game unbalanced to this point of view. Klingo. From crossfire-request Tue Mar 22 17:44:53 1994 Return-Path: Received: from anna.it.lut.fi by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 17:44:49 +0100 Received: from localhost (haatanen@localhost) by anna.it.lut.fi (8.6.5/8.6.5/1.12.kim) id SAA16253; Tue, 22 Mar 1994 18:44:45 +0200 (for crossfire@ifi.uio.no) From: Tero Haatanen Message-Id: <199403221644.SAA16253@anna.it.lut.fi> Subject: Container bug To: crossfire@ifi.uio.no Date: Tue, 22 Mar 94 18:44:43 EET In-Reply-To: <9403221401.aa09549@serv-301.dfki.uni-kl.de>; from "Klaus Elsbernd" at Mar 22, 94 3:01 pm X-Mailer: ELM [version 2.3 PL11] Status: RO From: Klaus Elsbernd > suppose you habe 2 container both filled with something. > Now, open one and with the mouse drop the contents of the other container > into the first one by pushing the right mouse button on the second one. > If the first container can't hold that much a never ending loop results. I have fixed (almost redone) the container code, this bug like some other not so serious ones are fixed. I try get patch done sometime soon (hopefully ;). I still could use bitmaps/pixmaps for different containers and gravestones. Nobody hasn't yet offered anything :(. If I don't get any, I make patch without them and hopefully someone designs needed archetypes after that. -Tero From crossfire-request Tue Mar 22 15:05:58 1994 Return-Path: Received: from sognsvann.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id ; Tue, 22 Mar 1994 15:05:57 +0100 From: Kjetil Torgrim Homme Received: by sognsvann.ifi.uio.no ; Tue, 22 Mar 1994 15:05:56 +0100 Date: Tue, 22 Mar 1994 15:05:56 +0100 Message-Id: <199403221405.24667.sognsvann.ifi.uio.no@ifi.uio.no> To: friedric@kirk.fmi.uni-passau.de CC: crossfire@ifi.uio.no In-reply-to: Carsten Friedrich's message of Tue, 22 Mar 1994 14:44:26 +0100 (MET) <199403221344.AA03740@kirk.fmi.uni-passau.de> Subject: Re: unsubscribe Status: RO Yes, we have a crossfire-announce list for just that purpose. Just send crossfire-request@ifi.uio.no some mail, and I'll remove you from the discussion list. (I've already fixed Carsten) Do not send such messages to crossfire@ifi.uio.no! Kjetil T. From crossfire-request Tue Mar 22 15:01:57 1994 Return-Path: <<@serv-200.dfki.uni-kl.de:elsbernd@dfki.uni-kl.de>> Received: from uni-kl.de by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 15:01:53 +0100 Received: from serv-200.dfki.uni-kl.de by stepsun.uni-kl.de id aa14406; 22 Mar 94 15:01 MET Received: from serv-301.dfki.uni-kl.de by serv-200.dfki.uni-kl.de id aa13881; 22 Mar 94 14:01 GMT Received: from serv-301.dfki.uni-kl.de by serv-301.dfki.uni-kl.de id aa09549; 22 Mar 94 14:01 GMT To: Mark Wedel cc: crossfire@ifi.uio.no Subject: Re: Magic & Metal, was Re: fighters & magic In-reply-to: Your message of "Tue, 22 Mar 1994 02:08:01 PST." <199403221008.AA16677@bolero.rahul.net> Date: Tue, 22 Mar 1994 15:01:32 +0100 From: Klaus Elsbernd Message-ID: <9403221401.aa09549@serv-301.dfki.uni-kl.de> Status: RO Hi there; I want to report the following error: suppose you habe 2 container both filled with something. Now, open one and with the mouse drop the contents of the other container into the first one by pushing the right mouse button on the second one. If the first container can't hold that much a never ending loop results. See server/input.c line 176ff: /* Eneq(@csd.uu.se): If the object to be dropped is a container we instead move the contents of that container into the active container, this is only done if the object has something in it. */ while (tmp->inv) drop (op, tmp->inv); draw_info (op, "You put the items into the container."); return; We should make dropt return a value 'true' if dropping is successfull otherwhise 'false'. (Something like that.) Then it should be possible to terminate the loop by testing that value. MfG Klaus Elsbernd From crossfire-request Tue Mar 22 14:45:14 1994 Return-Path: Received: from kirk.fmi.uni-passau.de by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 14:45:09 +0100 Received: from berengar.fmi.uni-passau.de by kirk.fmi.uni-passau.de with SMTP id AA03740 (5.65c/IDA-1.4.4 for ); Tue, 22 Mar 1994 14:44:25 +0100 From: Carsten Friedrich Message-Id: <199403221344.AA03740@kirk.fmi.uni-passau.de> Subject: unsubscribe To: crossfire@ifi.uio.no Date: Tue, 22 Mar 1994 14:44:26 +0100 (MET) X-Mailer: ELM [version 2.4 PL22] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 610 Status: RO Hi, is it possible to unsubscribe me from the general discussion, but still let me know about release of new versions ? if not, please just unsubscribe me. thanks, carsten -- ############################################################################### Carsten Friedrich friedric@fmi.uni-passau.de I have the impression that, to penguins, man is just another penguin -- different, less predictable, occasionally violent, but tolerable company when he sits still and minds his own business. (B. Stonehouse) ############################################################################### From crossfire-request Tue Mar 22 14:29:33 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 14:29:18 +0100 Received: from localhost.Berkeley.EDU (localhost.Berkeley.EDU [127.0.0.1]) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) with SMTP id FAA14843 for ; Tue, 22 Mar 1994 05:29:04 -0800 Message-Id: <199403221329.FAA14843@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: Re: magic and fighters In-reply-to: Your message of "Mon, 21 Mar 1994 16:11:26 PST." <199403220011.QAA14201@soda.berkeley.edu> Date: Tue, 22 Mar 1994 05:29:02 -0800 From: Scott MacFiggen Status: RO In message <199403220011.QAA14201@soda.berkeley.edu> peterm writes: > > I really hate class distinctions. I think it's fundamentally stupid >to say "This guy is a wizard, so he cannot equip armour". Has the >wizard got spines or something? Why shouldn't a wizard be able to swing >around a sword? Or wear armour? <<<< Lots of stuff deleted >>>> I personally hate the idea of classes period. They are way too generic and general. Have you guys ever played Warhammer FRP? Instead of using classes they use Careers. Basically everybody has a job or had a job that payed the bills in between adventures. Your job dictated what staring skills you have, what attributes you can raise, and what equipment you get. Its a bit late for this but its an idea. -Scott PS: I think Crossfire needs its own mythology. From crossfire-request Tue Mar 22 11:10:09 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 11:09:20 +0100 Received: by bolero.rahul.net id AA16677 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Tue, 22 Mar 1994 02:08:01 -0800 Date: Tue, 22 Mar 1994 02:08:01 -0800 From: Mark Wedel Message-Id: <199403221008.AA16677@bolero.rahul.net> To: crossfire@ifi.uio.no, njw@cs.city.ac.uk, philb@soda.berkeley.edu Subject: Re: Magic & Metal, was Re: fighters & magic Status: RO But I don't know if saying that AD&D is the supreme game, and its reasoning should thus be followed. AD&D has a fairly strong class system, while crossfire has a weak one. A better approach would be that casting spells require a certain amount of hand and possibly body movement. Wearing heavy armor, or holding a shield, would make this very difficult to do. Under this reasoning, wearing light armor (robes, leather, maybe elvin chain) would be ok, but heavier stuff would interfere. As a side note, for another game system that I played once, it was ferrous based armor that caused problems (magnetism or something.) But wearing copper or silver armor would be fine (except they offered less protection and cost more money..) --Mark From crossfire-request Tue Mar 22 09:53:46 1994 Return-Path: Received: from thorin.research.natpower.co.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 09:53:44 +0100 Received: by research.natpower.co.uk (AIX 3.2/UCB 5.64/4.03) id AA26459; Tue, 22 Mar 1994 08:51:47 GMT From: sadlerr@research.natpower.co.uk (RobertSadler) Posted-Date: Tue, 22 Mar 1994 08:51:47 +0000 (GMT) Message-Id: <9403220851.AA26459@research.natpower.co.uk> Subject: Trouble compiling under AIX To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Tue, 22 Mar 1994 08:51:47 +0000 (GMT) X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 415 Status: RO This may be a stupid question, but is there any particular trick to compiling crossfire under AIX. I get funtion declaration errors when I try to compile the program, as well as problems with macro definitions The problems all seem C pre-processor related - any thoughts on this? -- Rob Sadler | sadlerr@research.natpower.co.uk | sadlerr@spencer.demon.co.uk (home) From crossfire-request Tue Mar 22 09:42:22 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 09:41:54 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA13438; Tue, 22 Mar 1994 18:39:59 +1000 Date: Tue, 22 Mar 1994 18:39:59 +1000 From: "Rupert G. Goldie" Message-Id: <199403220839.AA13438@eden-valley.aaii.oz.AU> To: peterm@soda.berkeley.edu Subject: magic walls bug Cc: crossfire@ifi.uio.no Status: RO Are magically created walls supposed to be destructible ? Crossfire 0.90.3 core dumps if I create an active wall and then try to hit it. It dies because when you hit a destructible wall it tries to find the next animation as it is torn down, but the magically created ones don't seem to have animations. Rupert From crossfire-request Tue Mar 22 09:29:44 1994 Return-Path: Received: from barney.cs.city.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 09:29:41 +0100 Received: from wilma.cs.city.ac.uk by barney.cs.city.ac.uk; Tue, 22 Mar 1994 08:33:30 GMT Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.wilma.cs.city.ac.uk.sun4.41 via MS.5.6.wilma.cs.city.ac.uk.sun4_41; Tue, 22 Mar 1994 08:28:16 +0000 (GMT) Message-Id: Date: Tue, 22 Mar 1994 08:28:16 +0000 (GMT) From: Nick Williams Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII To: crossfire@ifi.uio.no (Crossfire Mailing List), Philip Brown Subject: Magic & Metal, was Re: fighters & magic In-Reply-To: <199403220210.SAA29591@soda.berkeley.edu> References: <199403220210.SAA29591@soda.berkeley.edu> Status: RO Does everyone know the D&D (or AD&D, I'm not sure) reasoning behind *why* mages can't wear armour? It's not just an arbitrary class distinction, it's reasonable! The idea is that magic is a bit like electricity. Works fine, but you can short it out real easy with quite catastrophic effects. If you attempt to cast a spell while wearing armour, the likelihood is that the magical energy will "short" on the metal contained within the armour and cause Badness. Perhaps cause a fireball to detonate inside your armour.... This also would affect the victim of a spell: assuming a mage successfully casts an offensive spell without it detonating in his underpants, and it is cast at a barbarian wearing a veritable smithery of armor, then the spell will have good effect against said barbarian. Note that the metal/magic phenomena is quite seperate to electricity/metal phenomena: casting a lightning spell around metal should be doubly Bad, and casting fireballs while wearing cloth robes should also have their pitfalls..... So before casting a spell, a mage should be careful of what metal she/he has on their person. So wearing a robe+4, with good boots and other non-metallic armour would be perfectly fine. The mage could even wear metal armour for a while, so long as they didn't cast any spells. Simple to implement in crossfire: just keep a count of how much metal a person has on them and then adjust spell effects accordingly. Crossfire already "knows" what objects are made of and how much they weigh. The "check-to-see-if-metal-broke-the-spell" check should be done before entering the specific spell code, as it's a general thing. Nick Williams, Systems Architecture Research Centre, City University, London, EC1V 0HB. UK. Web: http://web.cs.city.ac.uk/finger?njw E-mail: njw@cs.city.ac.uk (MIME and ATK) Work Telephone: +44 71 477 8551 Work Fax: +44 71 477 8587 From crossfire-request Tue Mar 22 08:10:57 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 08:10:44 +0100 Received: by bolero.rahul.net id AA08179 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 21 Mar 1994 23:10:29 -0800 Date: Mon, 21 Mar 1994 23:10:29 -0800 From: Mark Wedel Message-Id: <199403220710.AA08179@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: ftp site (more) Status: RO One thing I neglected to state in my previous message (and which several people have seemed to ask), is why change the primary site at all. The main reason is this. I am located in the U.S. (near San Francisco, California to be more precise) As such, the connection speed to the ifi ftp site can vary. In some cases, I may be fortunate to get as fast as 2K/s. In other cases, 200 bytes/second might be all I get. A lot depends on what time I try to do the transfer. At ftp.world.net, I should always be able to get fairly good transfer times. Plus, the administrator there will set me up with proper permissions so that I can put the files in the proper place, and I imagine also delete old files or whatever else (Right now, when I transfer to ifi, I upload to the incoming directory, and either Frank or Kjetil relocate it to the proper place. I also assume that they do some file removal.) I have no problems with them handling the ftp.ifi site, as long as they are willing to do it. However, I don't think anything can really be done to improve the speed of the connection between here and ifi. This described the reason I sent out the questionaire. If most people use the ifi site, then I'll keep that as the primary site, and deal with the speed inconvenience. If most people use the world.net site, then it would make sense to have that as the primary site. I've talked to the administrator of the Australian site, and he says that he has no problem changing where they mirror from, if it does change. So no matter what happens, it should not affect those who use the Australian site much at all. Mark Wedel master@rahul.net From crossfire-request Tue Mar 22 03:10:34 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 03:10:30 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id SAA29591 for crossfire@ifi.uio.no; Mon, 21 Mar 1994 18:10:24 -0800 From: Philip Brown Message-Id: <199403220210.SAA29591@soda.berkeley.edu> Subject: Re: fighters & magic To: crossfire@ifi.uio.no (Crossfire Mailing List) Date: Mon, 21 Mar 1994 18:10:20 -0800 (PST) In-Reply-To: from "Eric A. Anderson" at Mar 21, 94 07:59:24 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 375 Status: RO >>>>[From Eric A. Anderson] I'd like to be able to be a jack of all trades. How about this idea: Require training to go up in levels. You go out, you get some experience, some gold, you come back and you train. Exactly. The thing about "renaissance men" is not that they went out and did everything, but that they EDUCATED themselves , and THEN did stuff. From crossfire-request Tue Mar 22 02:00:22 1994 Return-Path: Received: from andrew.cmu.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 02:00:19 +0100 Received: from localhost (postman@localhost) by andrew.cmu.edu (8.6.4/8.6.4) id UAA26247 for crossfire@ifi.uio.no; Mon, 21 Mar 1994 20:00:12 -0500 Received: via switchmail; Mon, 21 Mar 1994 20:00:12 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Mon, 21 Mar 1994 19:59:35 -0500 (EST) Received: from madhatter.ws.cc.cmu.edu via qmail ID ; Mon, 21 Mar 1994 19:59:31 -0500 (EST) Received: from BatMail.robin.v2.13.CUILIB.3.45.SNAP.NOT.LINKED.madhatter.ws.cc.cmu.edu.sun4c.411 via MS.5.6.madhatter.ws.cc.cmu.edu.sun4c_411; Mon, 21 Mar 1994 19:59:24 -0500 (EST) Message-ID: Date: Mon, 21 Mar 1994 19:59:24 -0500 (EST) From: "Eric A. Anderson" To: crossfire@ifi.uio.no Subject: Re: fighters & magic In-Reply-To: <199403210115.RAA27927@phantasm.ecst.csuchico.edu> References: <199403210115.RAA27927@phantasm.ecst.csuchico.edu> Status: RO Don Tabb writes: > Forwarded message: > > From: Kjetil Torgrim Homme > > > > You suggestions would mostly help _fighters_, and IMO, > > fighters are too good magicians already (and vice versa!) > > I agree. fighers should not be able to use wands and staffs > and mages should not use swords. That is the whole joy of > character classes. You make a high level tank/fighter, but > you need a mage and a healer to help him. a thief class would > be cool.. stealing stuff from classes (like money or bags) > ways to save items and ways for others to steal them. I'd like to be able to be a jack of all trades. How about this idea: Require training to go up in levels. You go out, you get some experience, some gold, you come back and you train. You can make the training general or specific. E.g. down to the level of training in swords vs. maces, and training in ball spells or bolt spells. This would help balance things out. -Eric ********************************************************* "It seemed like a good idea at the time" -The Mad Hatter "Yes, you're very smart. Shut up." -In "The Princess Bride" ********************************************************* From crossfire-request Tue Mar 22 01:11:46 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 01:11:42 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id QAA14201 for crossfire@ifi.uio.no; Mon, 21 Mar 1994 16:11:26 -0800 Date: Mon, 21 Mar 1994 16:11:26 -0800 From: Peter Mardahl Message-Id: <199403220011.QAA14201@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: magic and fighters Status: RO I really hate class distinctions. I think it's fundamentally stupid to say "This guy is a wizard, so he cannot equip armour". Has the wizard got spines or something? Why shouldn't a wizard be able to swing around a sword? Or wear armour? But why should someone wearing armour be good at casting spells? Also, why should someone who is swinging around a heavy sword have hands free for effective spellcasting? If you're wearing a tin can, your spells should fail more often. I would MUCH rather see this built in to the code than trying to hard-code distinctions between classes. Why does everyone hate the concept of the Renaissance Man so much? What's wrong with one player being very, very good at two different things? Koss, that ice skater from Norway, won some gold medals and is also in medical school. Why should we hard-code it so that players like Koss are impossible? It happens in real life, but we want to make it impossible in a fantasy game? It is sufficient to build in a greater chance of spell failure if you're wearing too much garbage. Prayers should be immune to this. This is also much easier than building in class distinctions. I really disagree with the idea that you should always be what you start as. I think you should be what you are good at. Comon, a fighter who has a strength of 16 and an int of 25 should be played like a wizard, not like a fighter. And with an int of 25, he should be a damned good wizard, not crippled because he bears the arbitrary label 'fighter'. I DO agree that a person should not be both a good fighter and a good magician at the same instant. I do not think Koss could wear ice skates and do surgery at the same time. Similarly, a player should not be able to wear armor and swing a sword around and cast spells at the same time, at least not very successfully. I think that's a much better way of doing it than having 'classes'. What needs to be done: 1) Build in spell failure dependent on armour worn and weapons wielded 2) Make it MUCH more expensive in time to take armour on and off. 3) have spell failures do various amusing things. I will eventually do these things if no one does them first. PeterM From crossfire-request Tue Mar 22 00:47:45 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 00:47:42 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id PAA10881 for crossfire@ifi.uio.no; Mon, 21 Mar 1994 15:47:20 -0800 Date: Mon, 21 Mar 1994 15:47:20 -0800 From: Peter Mardahl Message-Id: <199403212347.PAA10881@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: level dependencies & spell parameters Status: RO DOes everyone know about this? Among the things that we at soda have done is this: many spells are now level dependent. the level dependency is tunable, and resettable on the fly by the DM using the command 'spellreset' (I hope) Things you can change on the fly now: spellpoints of a spell, it's level, the damage it does, the dependency of damage on level, its duration, the dependency of duration on level. What does 'duration' mean for a summoning monster spell? How about level dependency for a summoning monster spell? read spell_params.doc! It turns out that you can set the hp of your summoned monster now, and the damage he will do. 30 level wizards summon better fire elementals than 20 level wizards do! Why did I make it (hopefully) so that the parameters are resettable on the fly? Because the spells are WAAAY out of balance! We need a firing range type of object, which will absorb damage and report how much it's been hurt. We can see how much damage all the various spells do, and know what spellpoint cost they really should have. Also, with the level dependencies, some spells become extremeley powerful. burning hands was useless once upon a time, you couldn't damage a monster with it faster than it healed in some cases. But burning hands costs only 5sp. Should the sp cost be level dependent also? Perhaps attack spells should have no level depencencies, but summoning spells should. It's up to the dm, all he needs to do is tweak the spell_params file in the libdir.... Regards, PeterM From crossfire-request Tue Mar 22 00:31:12 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 22 Mar 1994 00:31:05 +0100 Received: (peterm@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id PAA09279 for crossfire@ifi.uio.no; Mon, 21 Mar 1994 15:30:55 -0800 Date: Mon, 21 Mar 1994 15:30:55 -0800 From: Peter Mardahl Message-Id: <199403212330.PAA09279@soda.berkeley.edu> To: crossfire@ifi.uio.no Subject: stat spells--update Status: RO I just gave Mark a set of patches to the stat spell code which will do the following: gettting up to stat 20 is easy. Getting past stat 20 is expensive in time and spellpoints. Here's how it works now: you have a 90% chance of going 20-21, 80% 21-22, (or is it 22-23?) down to 20 or 10% to go from 29 to 30. If you want to max your stats out, you're going to pay for it in time and sp. Everytime youcast the spell it costs you sp, but you have a decreasing chance of actaully gaining a stat as you go higher. It may take youmaybe 20-25 castings to get from 20-30 now, maybe more. PeterM From crossfire-request Mon Mar 21 20:53:48 1994 Return-Path: Received: from edison.eng.auburn.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 20:53:45 +0100 Received: from corsair.eng.auburn.edu (corsair.eng.auburn.edu [131.204.31.8]) by edison.eng.auburn.edu (8.6.4/8.6.4) with ESMTP id NAA28016 for ; Mon, 21 Mar 1994 13:53:39 -0600 Received: from localhost (dyessww@localhost) by corsair.eng.auburn.edu (8.6.4/8.6.4) id NAA20242; Mon, 21 Mar 1994 13:53:38 -0600 Date: Mon, 21 Mar 1994 13:47:50 -0600 (CST) From: "William W. Dyess" Subject: Re: More maps To: crossfire@ifi.uio.no In-Reply-To: <19940321175049.25850.gymir.ifi.uio.no@ifi.uio.no> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO I see your point. I wonder if that's such a bad thing? Perhaps someone with Int 25+ *should* be able to continuously cast armour spells. I don't expect he can regenerate fast enough to keep very many spells going simultaneously, can he? (I'm asking honestly, I haven't played all that much. I'm waiting for client-server :)) --Bill On Mon, 21 Mar 1994, Kjetil Torgrim Homme wrote: > +--- Bill Dyess: > | Let multiple spells be cast upon a player but let the durations > | accumulate, not the effects. > > This may seem like a good idea, but it only leads to mages throwing a > lot of, e.g, armour spells at themselves in idle moments. Of course, > you can make the armour spell cost so many spell points that the mage > won't regenerate them while the spell has effect, but then it will be > too costly. (Have you seen how quickly someone with Int 25+ > regenerates SP?) > > Getting balance right is hard. > > > Kjetil T. > From crossfire-request Mon Mar 21 18:50:51 1994 Return-Path: Received: from gymir.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 18:50:50 +0100 From: Kjetil Torgrim Homme Received: from localhost by gymir.ifi.uio.no ; Mon, 21 Mar 1994 18:50:49 +0100 Date: Mon, 21 Mar 1994 18:50:49 +0100 Message-Id: <19940321175049.25850.gymir.ifi.uio.no@ifi.uio.no> To: crossfire@ifi.uio.no In-reply-to: "William W. Dyess"'s message of Mon, 21 Mar 1994 11:18:24 -0600 (CST) Subject: Re: More maps Status: RO +--- Bill Dyess: | Let multiple spells be cast upon a player but let the durations | accumulate, not the effects. This may seem like a good idea, but it only leads to mages throwing a lot of, e.g, armour spells at themselves in idle moments. Of course, you can make the armour spell cost so many spell points that the mage won't regenerate them while the spell has effect, but then it will be too costly. (Have you seen how quickly someone with Int 25+ regenerates SP?) Getting balance right is hard. Kjetil T. From crossfire-request Mon Mar 21 18:22:44 1994 Return-Path: Received: from edison.eng.auburn.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 18:22:39 +0100 Received: from lab15.eng.auburn.edu (lab15.eng.auburn.edu [131.204.11.15]) by edison.eng.auburn.edu (8.6.4/8.6.4) with ESMTP id LAA19124 for ; Mon, 21 Mar 1994 11:22:06 -0600 Received: from localhost (dyessww@localhost) by lab15.eng.auburn.edu (8.6.4/8.6.4) id LAA00399; Mon, 21 Mar 1994 11:22:05 -0600 Date: Mon, 21 Mar 1994 11:18:24 -0600 (CST) From: "William W. Dyess" Subject: Re: More maps To: crossfire@ifi.uio.no In-Reply-To: <29255.764247475@mailhost.aber.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: RO Let multiple spells be cast upon a player but let the durations accumulate, not the effects. --Bill > I agree that you should be able to use fire resistance spells and dexterity > spells at the same time (just an example), but I don't like the idea of people > using multiple strength spells (again, for example) to max a stat! If a spell > is in effect, the most logical way to reverse it, without inventing a whole > class of 'reverse' spells, is to make a 2nd casting of the spell nullify the > original casting.... i.e. terminate a levitation spell early by casting > levitation again! > > This method keeps the number of spells down, and keeps their application a > little more logical. > > Just my 2 penneth! Ben. > > p.s. > Btw, I also like the chico maps alot - there is plenty of expansion capability > - check out the dragon exits and the large ships in the harbour area of > /city/city if you want to add new areas - like I have done (well, it's still > under construction). I'll eventually put these somewhere where other people > can try them. :-) > > +--------------------------------------------------------------------------+ > | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | > | (\/) +--------------------------------+--------------------------+ > | vv | However, I still know nothing! | btk@aber.ac.uk | > +--------------+--------------------------------+--------------------------+ > From crossfire-request Mon Mar 21 12:30:01 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 12:29:59 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Mon, 21 Mar 1994 11:29:49 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA08952; Mon, 21 Mar 94 11:26:14 GMT To: Mark Wedel Cc: crossfire@ifi.uio.no Subject: Re: FTP site In-Reply-To: Your message of "Mon, 21 Mar 1994 02:14:01 PST." <199403211014.AA22527@bolero.rahul.net> Date: Mon, 21 Mar 1994 11:31:40 +0000 Message-Id: <1606.764249500@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Mark, I presently use ftp.ifi.uio.no, and I'd like to keep it that way. If ftp.world.net can mirror of ifi, and ifi can't mirror off world.net, I personally think it would be better left that way 'round for distribution purposes. Then again I'm very biased on this question 'cos of the obvious speed advantages for me being in Europe, and using a European ftp-site! :-) Tara. Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Mon Mar 21 12:10:30 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 12:10:29 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Mon, 21 Mar 1994 11:10:24 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA08854; Mon, 21 Mar 94 11:06:48 GMT To: Don Tabb Cc: crossfire@ifi.uio.no Subject: Re: fighters & magic In-Reply-To: Your message of "Sun, 20 Mar 1994 17:15:01 PST." <199403210115.RAA27927@phantasm.ecst.csuchico.edu> Date: Mon, 21 Mar 1994 11:12:13 +0000 Message-Id: <232.764248333@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Don Tabb wrote: > on maps: what still needs to be done? what do we need? more > low level maps, or high level maps (10-20) or demi-god level maps? > > I will start working on more maps, so should I finish castle scorn, > or the tabbland quest? > > and how hard should I make them. Castle Scorn!- its frustrating having such a large object in the starting map that's closed :-) Make it a good one! Good Luck, Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Mon Mar 21 12:06:41 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 12:06:37 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Mon, 21 Mar 1994 11:06:23 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA08833; Mon, 21 Mar 94 11:02:46 GMT To: Philip Brown Cc: crossfire@ifi.uio.no Subject: Re: fighters & magic In-Reply-To: Your message of "Mon, 21 Mar 1994 00:18:47 PST." <199403210818.AAA19812@soda.berkeley.edu> Date: Mon, 21 Mar 1994 11:08:11 +0000 Message-Id: <29847.764248091@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Philip Brown did scribe: >>>>[From Rupert G. Goldie] >> The problem with this is that plenty of people still play Crossfire >> solo, so it is not possible to have a whole party. > Well... what about NPC's? :-) > or to be more fair, Mercenaries. > You would loose some amount of gold, and the normal split of experience > for parties. Something I'd like to see would be horses, donkeys and other pack animals which could increase carrying capability and long distance speed in the wilderness areas, but have to be left somewhere safe when the character enters a dungeon area -stables in town like taverns? horse-box-to-reality? This might present a better way to carry large quantities of booty than by allowing characters to carry 1500-2000+ lbs if they are strong enuff! Think on! :-) Ben. +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Mon Mar 21 11:56:30 1994 Return-Path: Received: from mailsun.aber.ac.uk by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 11:56:19 +0100 Received: from athene.dcs.aber.ac.uk by mailsun.aber.ac.uk with SMTP (PP); Mon, 21 Mar 1994 10:56:04 +0000 Received: from thorbb by athene.dcs.aber.ac.uk (4.1/aberclient-4.0-cs-1.1) id AA08747; Mon, 21 Mar 94 10:52:30 GMT To: Peter Mardahl Cc: crossfire@ifi.uio.no Subject: Re: More maps In-Reply-To: Your message of "Sat, 19 Mar 1994 14:12:21 PST." <199403192212.OAA22753@soda.berkeley.edu> Date: Mon, 21 Mar 1994 10:57:55 +0000 Message-Id: <29255.764247475@mailhost.aber.ac.uk> From: Benjamin Thomas Ketteridge Status: RO Peter Mardahl wrote: > I think you should be able to have several magical effects > in place at once. Why should it be impossible to have a dexterity > spell on and a fire resistance spell on? The way it was before, > if you put one in, you lost any other that was there before. That > just makes no sense to me. > > You should be able to put protections and other spells in place > at the same time, if you're willing to spend the spellpoints. > > As to using this force-removing 'feature' to remove levitation, > that seems like a very silly trick to me. One should not have to > do that: if a spellcaster wants to give up his levitation spell, > he should NOT have to cast an unrelated spell simply to get rid of > it! I agree that you should be able to use fire resistance spells and dexterity spells at the same time (just an example), but I don't like the idea of people using multiple strength spells (again, for example) to max a stat! If a spell is in effect, the most logical way to reverse it, without inventing a whole class of 'reverse' spells, is to make a 2nd casting of the spell nullify the original casting.... i.e. terminate a levitation spell early by casting levitation again! This method keeps the number of spells down, and keeps their application a little more logical. Just my 2 penneth! Ben. p.s. Btw, I also like the chico maps alot - there is plenty of expansion capability - check out the dragon exits and the large ships in the harbour area of /city/city if you want to add new areas - like I have done (well, it's still under construction). I'll eventually put these somewhere where other people can try them. :-) +--------------------------------------------------------------------------+ | _|--|_ | Disclaimer: I've got a degree and maybe 1/3 of a PhD. | | (\/) +--------------------------------+--------------------------+ | vv | However, I still know nothing! | btk@aber.ac.uk | +--------------+--------------------------------+--------------------------+ From crossfire-request Mon Mar 21 11:14:20 1994 Return-Path: Received: from bolero.rahul.net by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 11:14:14 +0100 Received: by bolero.rahul.net id AA22527 (5.67a8/IDA-1.5 for crossfire@ifi.uio.no); Mon, 21 Mar 1994 02:14:01 -0800 Date: Mon, 21 Mar 1994 02:14:01 -0800 From: Mark Wedel Message-Id: <199403211014.AA22527@bolero.rahul.net> To: crossfire@ifi.uio.no Subject: FTP site Status: RO I am trying to settle on what ftp site should be the primary source site for crossfire. ftp.world.net (US) will set me up. But ftp.ifi.uio.no will not do automatic mirrors off of it, and that will instead need to be done manually (although, I would guess that with some work, a script could be made to do it semi automatically.). Here are the three sites that presently have crossfire: ftp.ifi.uio.no:/pub/crossfire (129.240.64.2) ftp.world.net:/pub/crossfire (192.243.32.18) yoyo.cc.monash.edu.au:/pub/crossfire (130.194.9.1) (note that the second to presently mirror off of ifi). Some questions (Please only send me responses if you actually ftp the files yourself) 1) What ftp site do you presently use to get the distributions? 2) What ftp site would you prefer to use to get the distribution (assume that the source appeared on all three very soon after initial release)? Hopefully, with responses to these questions, I can get an idea of whether world.net should become the primary source. Mark Wedel master@rahul.net From crossfire-request Mon Mar 21 11:08:43 1994 Return-Path: Received: from ild.alkymi.unit.no by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 11:08:43 +0100 Received: by ild.alkymi.unit.no id AA12668 (5.65c/IDA-1.4.4 for crossfire@ifi.uio.no); Mon, 21 Mar 1994 11:08:07 +0100 From: Inge Berg Fenstad Message-Id: <199403211008.AA12668@ild.alkymi.unit.no> Subject: Weaponboosting. To: eanders+@CMU.EDU (Eric A. Anderson) Date: Mon, 21 Mar 1994 11:08:07 +0100 (MET) Cc: crossfire@ifi.uio.no In-Reply-To: from "Eric A. Anderson" at Mar 19, 94 01:16:22 am X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 1710 Status: RO Boosting a weapon is pretty easy and ingredients easy to be found: Improvescrolls to be found: /skud/east_1:arch improve_damage /kar/devil.church2:arch improve_con /kar/wiz7:arch improve_enchantment /hendel/acid_room:arch improve_weight /hendel/acid_room:arch improve_damage /hendel/pre_acid:arch improve_weight /hendel/red_realm_1:arch improve_weight /hendel/red_realm_1:arch improve_str /hendel/red_realm_1:arch improve_dex /hendel/red_realm_1:arch improve_cha /peterm/temple/GemTunnel:arch improve_wis /peterm/temple/GemTunnel:arch improve_str /peterm/temple/GemTunnel:arch improve_dex You find preparescrolls here: /hendel/acid_room: arch prepare_weapon There are two EASY con-potions and one str. potion in santa dominion (bungalow) With a preparescroll and a non-magic weapon you can prepare sqrt(diamonds) enchantments in the weapon (And diamonds are cheap) Enchantments are done by using the improvescroll and some potions 20 potions => +3 100 potions => +7 You get about 3-4000 gold for EACH dragon you kill which means MONEY is no problem...(Dragonbarn outside santa dominion) I have heard that a person with a low stat (like 11 or so) can cast multiple stat-spell on himself and get 30. and at the same time do the same thing in others stats. One player i know EASILY made himself a: Large morningstar(Str +6 Dex +9 Con +7...weight 0.001 kg (weaponspeed => 3.86) He is now a lvl 31 with 18M exp. In addition to this a persom can get himself: The luggage. A container which reduces weight by 75% and makeing a person have top speed nomather what he carrior (allmost) ALL of this is done WITHIN the game WITHOUT any access to the file i.e. it is LEGAL.... Need more ?? Inge From crossfire-request Mon Mar 21 09:19:55 1994 Return-Path: Received: from soda.berkeley.edu by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 09:19:46 +0100 Received: (philb@localhost) by soda.berkeley.edu (8.6.8/PHILMAIL-1.10) id AAA19812; Mon, 21 Mar 1994 00:18:49 -0800 From: Philip Brown Message-Id: <199403210818.AAA19812@soda.berkeley.edu> Subject: Re: fighters & magic To: rgg@aaii.oz.au (Rupert G. Goldie) Date: Mon, 21 Mar 1994 00:18:47 -0800 (PST) Cc: crossfire@ifi.uio.no, dtabb@ecst.csuchico.edu In-Reply-To: <199403210436.AA07515@eden-valley.aaii.oz.AU> from "Rupert G. Goldie" at Mar 21, 94 02:36:49 pm X-Mailer: ELM [version 2.4 PL5] Content-Type: text Content-Length: 579 Status: RO >>>>[From Rupert G. Goldie] The problem with this is that plenty of people still play Crossfire solo, so it is not possible to have a whole party. Well... what about NPC's? :-) or to be more fair, Mercenaries. You would loose some amount of gold, and the normal split of experience for parties. However, if you do not give over the gold... or just don't make enough money... there should be "creative" penalties inflicted upon the player. Like having the mercenaries kill you, for example? :-> :-> :-> [note: you can have mercenary spellcasters/clerics, etc.] From crossfire-request Mon Mar 21 05:45:37 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 05:45:22 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA07536; Mon, 21 Mar 1994 14:44:19 +1000 Date: Mon, 21 Mar 1994 14:44:19 +1000 From: "Rupert G. Goldie" Message-Id: <199403210444.AA07536@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, Magnus.Heldestad@cs.umu.se Subject: Re: More maps Status: RO > > I have been playing with the chico maps for a week, (cf v 0.90.3), and they > are quite good BUT there aren't enough of them. I am only level 10 with my > mage and I have been almost everywhere. > So, in other words....MORE MAPS!!! > I'm currently checking all my Nyka maps to add them to the distribution maps. I've had a couple of problems to do with changes in the archetype structures so I'm checking everything carefully. The most painful is with buttons and levers which used to use 'sp' to store the number they were connected to but now use 'connected'. Rupert From crossfire-request Mon Mar 21 05:41:48 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.7/ifi2.4) id for ; Mon, 21 Mar 1994 05:37:46 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA07515; Mon, 21 Mar 1994 14:36:49 +1000 Date: Mon, 21 Mar 1994 14:36:49 +1000 From: "Rupert G. Goldie" Message-Id: <199403210436.AA07515@eden-valley.aaii.oz.AU> To: crossfire@ifi.uio.no, dtabb@ecst.csuchico.edu Subject: Re: fighters & magic Status: RO > I agree. fighers should not be able to use wands and staffs > and mages should not use swords. That is the whole joy of > character classes. You make a high level tank/fighter, but > you need a mage and a healer to help him. a thief class would > be cool.. stealing stuff from classes (like money or bags) > ways to save items and ways for others to steal them. > The problem with this is that plenty of people still play Crossfire solo, so it is not possible to have a whole party. Maybe we should have classes ,for example, like Wizards and Mages where Wizards are better at spellcasting, but cannot wear metal armour, and Mages are like our current Wizards and Mages. Repeat for all classes, so you get a full set of classes which are suited for a party setup and a full set of classes which you can use on their own. Rupert From crossfire-request Mon Mar 21 05:24:51 1994 Return-Path: Received: from eden-valley.aaii.oz.AU by ifi.uio.no with SMTP (8.6.7/ifi2.4) id ; Mon, 21 Mar 1994 05:24:06 +0100 Received: by eden-valley.aaii.oz.AU (5.65c/SMI-4.0/AAII) id AA07455; Mon, 21 Mar 1994 14:22:46 +1000 Date: Mon, 21 Mar 1994 14:22:46 +1000 From: "Rupert G. Goldie" Message-Id: <199403210422.AA07455@eden-valley.aaii.oz.AU> To: kjetilho@ifi.uio.no, peterm@soda.berkeley.edu Subject: Re: More maps Cc: crossfire@ifi.uio.no Status: RO PeterM wrote: > I think you should be able to have several magical effects > in place at once. Why should it be impossible to have a dexterity > spell on and a fire resistance spell on? The way it was before, > if you put one in, you lost any other that was there before. That > just makes no sense to me. > Back when I did the Protection and stat raising spells, Frank modified them so that only one effect was active at a time. This was to prevent people from being able to hyper-improve themselves with lots of raise stat and Protection spells. It is a good idea from a game-balance point-of-view, but somewhat annoying from a player's point-of-view. A set of spells I plan to write is "Binding" I, II, III, IV, V which will let you cast more than one Self spell at once (ie Binding I lets you have two Self spells active at once). > As to using this force-removing 'feature' to remove levitation, > that seems like a very silly trick to me. One should not have to > do that: if a spellcaster wants to give up his levitation spell, > he should NOT have to cast an unrelated spell simply to get rid of > it! Yes, it is rather bogus. Rupert From owner-crossfire Tue Mar 29 12:49:44 1994 Return-Path: Received: from sognsvann.ifi.uio.no by ifi.uio.no with ESMTP (8.6.7/ifi2.4) id for ; Tue, 29 Mar 1994 12:49:44 +0200 Received: by sognsvann.ifi.uio.no ; Tue, 29 Mar 1994 12:49:42 +0200 Message-Id: <199403291049.27753.sognsvann.ifi.uio.no@ifi.uio.no> Subject: Crossfire 0.90.4 Announcement To: crossfire-announce@ifi.uio.no Date: Tue, 29 Mar 1994 12:49:41 +0200 (MET DST) Reply-To: crossfire@ifi.uio.no From: Mark Wedel X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 4284 Status: RO The following is the same as crossfire-0.90.4-README. The bits about what each file does should probably be added to the README file that is in the directory with the crossfire sources. There are three separate tar archives in the Crossfire 0.90.4 distribution. crossfire-0.90.4.tar.gz contains the actual program code, as well as premade archetype, bitmaps, and xpm files. crossfire-0.90.4-maps.tar.gz contains all the maps. The changes from the previous map distribution are mostly small, but if you plan on writing new maps or changing existing maps, you should get this file. crossfire-0.90.4-arch.tar.gz contains the unpacked archetype (arch) directory. This file is not needed if you just want to compile the games and play. The contents of this archive is used to create the archetypes, bmaps, font, and X PixMap (XPM) files. You only need it if you want to add new archetypes, or mess around with the existing ones. Notable changes from Crosfire 0.90.3 to 0.90.4: Many more XPM images now properly noted. NOTE TO COLORERS: A few minor changes have been to the xpm.template file (palegreen has been replaced with green3, and a more medium orange has been added.) I replaced palegreen because it was very close to the 'green' color already present. And a medium green was lacking. A medium orange was also lacking, so I added one in. New pickup modes, that can be based on value density (from Peter Mardahl ) Spells now have a casting time. (From Matthew Zeher ) Added libproto1.h file. This will be used for function prototypes are affected by certain settigns (IE, SPEED_GAME). This way, people should not need to run 'make proto' New XPM loading method. Creates montage of the xpm files, so that not as many calls to XPM are needed. This has reduced loading time to about 30% of what it was before. Note: This done mean it takes some more memory at start up, as the montage has to be stored temporarily. Changed charisma bonuses. At 30 charisma, it will no longer be possible to buy and item, and then sell it for more than you bought it for. Graphic exposures turned off on the GC's that are used in the game window. Should improve performance. When a raise stat spell ends, the proper message (ie, You look ugly, you feel less intelligent, etc) will now be printed out. If player NOT_PERMADEATH mode, and you die, a stat will only be decreased one. Before, that stat was decreased one, and the max stat was set to that value. So if the player was poisoned, or a stat was lowered due to some other reason, that loss would become permanent. Now, both the stat and orig_stat only gets decreased by one. invoke.c removed, cast_spell modified to handle what invoke.c did. Keep old shoot type if reading a scroll, instead of it being set to none. Raise stats spells should be progressively more costly (From Peter Mardahl) Should now be able to handle broken pipes without problem (ie, telnet session closing unexpectedly). Made it so that listen level 0 on a socket means that draw_all_sockets will not write to that socket. Crossclient uses this so that it does not get unexpected messages, and thinks that it failed. Added 'set font' option. This basically unsets color pixmaps or xpm mode. If crossclient was run without -xpm or -pix mode, it will send this command to use fonts. What this means is that set (font,pix,xpm) should set that display mode. Before, the display selection it defaulted to for crossclient seemed unreliable at best. Fixed memory allocation problem in commands.c (it was writing to more bytes than it had allocated) Draw message window almost complete re-written. In an effort to cut down on flashing of the the status bars. ( Niilo Neuvo ) More bug fixes for spells (from Peter Mardahl) Fixed some bugs for compiling on the Alpha running OSF/1 1.3 AVAILABILITY: Crossfire is avaible on the following ftp sites ftp.ifi.uio.no:/pub/crossfire (129.240.64.2) ftp.world.net:/pub/crossfire (192.243.32.18) yoyo.cc.monash.edu.au:/pub/crossfire (130.194.9.1) Note: there may be a short delay before the ftp.world.net and yoyo.cc.monash.edu.au sites get the newest version. Mark Wedel master@rahul.net From frankj Tue Mar 29 12:49:41 1994 Subject: Crossfire 0.90.4 Announcement To: crossfire-announce@ifi.uio.no Date: Tue, 29 Mar 1994 12:49:41 +0200 (MET DST) Reply-To: crossfire@ifi.uio.no From: Mark Wedel X-Mailer: ELM [version 2.4 PL21] Content-Type: text Content-Length: 4285 Status: RO The following is the same as crossfire-0.90.4-README. The bits about what each file does should probably be added to the README file that is in the directory with the crossfire sources. There are three separate tar archives in the Crossfire 0.90.4 distribution. crossfire-0.90.4.tar.gz contains the actual program code, as well as premade archetype, bitmaps, and xpm files. crossfire-0.90.4-maps.tar.gz contains all the maps. The changes from the previous map distribution are mostly small, but if you plan on writing new maps or changing existing maps, you should get this file. crossfire-0.90.4-arch.tar.gz contains the unpacked archetype (arch) directory. This file is not needed if you just want to compile the games and play. The contents of this archive is used to create the archetypes, bmaps, font, and X PixMap (XPM) files. You only need it if you want to add new archetypes, or mess around with the existing ones. Notable changes from Crosfire 0.90.3 to 0.90.4: Many more XPM images now properly noted. NOTE TO COLORERS: A few minor changes have been to the xpm.template file (palegreen has been replaced with green3, and a more medium orange has been added.) I replaced palegreen because it was very close to the 'green' color already present. And a medium green was lacking. A medium orange was also lacking, so I added one in. New pickup modes, that can be based on value density (from Peter Mardahl ) Spells now have a casting time. (From Matthew Zeher ) Added libproto1.h file. This will be used for function prototypes are affected by certain settigns (IE, SPEED_GAME). This way, people should not need to run 'make proto' New XPM loading method. Creates montage of the xpm files, so that not as many calls to XPM are needed. This has reduced loading time to about 30% of what it was before. Note: This done mean it takes some more memory at start up, as the montage has to be stored temporarily. Changed charisma bonuses. At 30 charisma, it will no longer be possible to buy and item, and then sell it for more than you bought it for. Graphic exposures turned off on the GC's that are used in the game window. Should improve performance. When a raise stat spell ends, the proper message (ie, You look ugly, you feel less intelligent, etc) will now be printed out. If player NOT_PERMADEATH mode, and you die, a stat will only be decreased one. Before, that stat was decreased one, and the max stat was set to that value. So if the player was poisoned, or a stat was lowered due to some other reason, that loss would become permanent. Now, both the stat and orig_stat only gets decreased by one. invoke.c removed, cast_spell modified to handle what invoke.c did. Keep old shoot type if reading a scroll, instead of it being set to none. Raise stats spells should be progressively more costly (From Peter Mardahl) Should now be able to handle broken pipes without problem (ie, telnet session closing unexpectedly). Made it so that listen level 0 on a socket means that draw_all_sockets will not write to that socket. Crossclient uses this so that it does not get unexpected messages, and thinks that it failed. Added 'set font' option. This basically unsets color pixmaps or xpm mode. If crossclient was run without -xpm or -pix mode, it will send this command to use fonts. What this means is that set (font,pix,xpm) should set that display mode. Before, the display selection it defaulted to for crossclient seemed unreliable at best. Fixed memory allocation problem in commands.c (it was writing to more bytes than it had allocated) Draw message window almost complete re-written. In an effort to cut down on flashing of the the status bars. ( Niilo Neuvo ) More bug fixes for spells (from Peter Mardahl) Fixed some bugs for compiling on the Alpha running OSF/1 1.3 AVAILABILITY: Crossfire is avaible on the following ftp sites ftp.ifi.uio.no:/pub/crossfire (129.240.64.2) ftp.world.net:/pub/crossfire (192.243.32.18) yoyo.cc.monash.edu.au:/pub/crossfire (130.194.9.1) Note: there may be a short delay before the ftp.world.net and yoyo.cc.monash.edu.au sites get the newest version. Mark Wedel master@rahul.net From owner-crossfire Sat Mar 12 06:48:33 1994 Return-Path: Received: from menja.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Sat, 12 Mar 1994 06:48:32 +0100 Received: from localhost by menja.ifi.uio.no ; Sat, 12 Mar 1994 06:48:32 +0100 Date: Sat, 12 Mar 1994 06:48:32 +0100 Message-Id: <19940312054832.5511.menja.ifi.uio.no@ifi.uio.no> To: crossfire-announce@ifi.uio.no From: Mark Wedel Subject: Crossfire 0.90.3 is released Sender: "Kjetil T. Homme" Reply-To: Crossfire discussion list Errors-To: Status: RO This is an announcement of the release of Crossfire 0.90.3. This release does not have many (any?) new features, but rather fixes some bugs. All of the Solaris 2.x patches should now be included. The spells should be fixed up some, and the bug with dying should be fixed. I'm really putting it out so people have a new baseline version to submit patches for. Plus, there seemed to be enough bugs in 0.90.2 to warrant a release. As usual, crossfire-0.90.3.tar.gz contains the program code (as well as pre built archetypes, bitmaps, font and other files.) crossfire-0.90.3.arch.tar.gz contains the unpacked archetype directory. It is not needed for playing. Some changes made, such as merging the chico bitmaps to their proper place, some more pixmaps colored, and removing some temporary files. There is no crossfire-0.90.3.maps file with this release. The maps have hardly changed at all, and don't need a new release. I'll probably make a new map file for 0.90.4. But for now, either get the file crossfire-0.90.2.maps.tar.gz, if this is your first time making crossfire, or if you already have crossfire 0.90.2 installed, just keep using those maps. Mark Wedel master@rahul.net From owner-crossfire Tue Mar 8 01:33:59 1994 Return-Path: Received: from holmenkollen.ifi.uio.no by ifi.uio.no with ESMTP (8.6.4/ifi2.4) id for ; Tue, 8 Mar 1994 01:33:58 +0100 Received: from localhost by holmenkollen.ifi.uio.no ; Tue, 8 Mar 1994 01:33:58 +0100 Date: Tue, 8 Mar 1994 01:33:58 +0100 Message-Id: <19940308003358.18094.holmenkollen.ifi.uio.no@ifi.uio.no> To: crossfire-announce@ifi.uio.no Subject: Crossfire 0.90.2 is released From: Mark Wedel Sender: "Kjetil T. Homme" Reply-To: Crossfire discussion list Errors-To: Status: RO Crossfire 0.90.2 is now available for ftp. There are 3 relevant files: crossfire-0.90.2.arch.tar.gz: Unpacked arch distribution. Not needed to play the game, but useful if adding new archetypes, and required if you want to build the spoiler (but I pre-built the spoiler before packing up the source). crossfire-0.90.2.maps.tar.gz: The map files, from chico. You should be able to use the crossfire 0.90.1 maps, or any maps that worked with crossfire 0.90.1. These maps will just be the starting block of the official maps. I plan to move in maps from the old distribution as I check them out to make sure they are good. crossfire-0.90.2.tar.gz: The source itself. Many changes made from 0.90.1. Read the CHANGES file in the distribution for a full list. The major ones are these: New spells, new input method, and fixed random encounters. Note: The .gz prefix means that these were compressed using gzip, and gunzip will be needed to uncompress these files. (I don't know if any of the ftp servers support auto unzipping or conversion to compress.) These will be available on ftp.ifi.uio.no. They should propgate to the mirror sites shortly. Crossfire files are available via FTP from the following sites: Europe: ftp.ifi.uio.no (129.240.64.2) USA: ftp.world.net (192.243.32.18) Oceania: yoyo.cc.monash.edu.au (130.194.9.1) Mark Wedel master@rahul.net