From kevinz5000 at gmail.com Sat Jan 2 11:05:15 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Sat, 2 Jan 2021 11:05:15 -0600 Subject: [crossfire] Crossfire 1.75.0 release engineering Message-ID: Hi folks, I am thinking about cutting a 1.75.0 release in the next couple of days. I would like to coordinate a full server/maps/arch release as well as releases for both the GTKv2 and JXClient. This release is a good time for those running servers to switch to Python 3, before some major code rework in the server. This will also be the last GTKv2 client using Gtk+2, since Gtk+2 is now officially EoL'ed (future GTK client releases will use Gtk3). I would certainly appreciate an extra set of eyes testing the server Python (after the Python 2 migration) and checking the GTK client builds. Thanks in advance, and happy 2021. Regards, Kevin From pc-crossfire06 at crowcastle.net Sat Jan 2 11:40:17 2021 From: pc-crossfire06 at crowcastle.net (Preston Crow) Date: Sat, 2 Jan 2021 12:40:17 -0500 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: References: Message-ID: <08d87a07-3ce2-1bd9-75c3-e174e95bbd48@crowcastle.net> I have a change to track per-skill high scores that I was meaning to put in.  Should I do it now, or wait until after the release? (I've been running it on my server for a while.) On 2021-01-02 12:05, Kevin Zheng wrote: > Hi folks, > > I am thinking about cutting a 1.75.0 release in the next couple of > days. I would like to coordinate a full server/maps/arch release as > well as releases for both the GTKv2 and JXClient. > > This release is a good time for those running servers to switch to > Python 3, before some major code rework in the server. > > This will also be the last GTKv2 client using Gtk+2, since Gtk+2 is > now officially EoL'ed (future GTK client releases will use Gtk3). > > I would certainly appreciate an extra set of eyes testing the server > Python (after the Python 2 migration) and checking the GTK client builds. > > Thanks in advance, and happy 2021. > > Regards, > Kevin > _______________________________________________ > crossfire mailing list > crossfire at metalforge.org > http://mailman.metalforge.org/mailman/listinfo/crossfire > From kevinz5000 at gmail.com Sat Jan 2 11:53:55 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Sat, 2 Jan 2021 11:53:55 -0600 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: <08d87a07-3ce2-1bd9-75c3-e174e95bbd48@crowcastle.net> References: <08d87a07-3ce2-1bd9-75c3-e174e95bbd48@crowcastle.net> Message-ID: On 1/2/21 11:40 AM, Preston Crow wrote: > I have a change to track per-skill high scores that I was meaning to put > in.  Should I do it now, or wait until after the release? (I've been > running it on my server for a while.) Would you mind attaching the patch here? If it's not so big, it would be a fun addition to 1.75.0. Thanks, Kevin From pc-crossfire06 at crowcastle.net Sun Jan 3 14:36:14 2021 From: pc-crossfire06 at crowcastle.net (Preston Crow) Date: Sun, 3 Jan 2021 15:36:14 -0500 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: References: <08d87a07-3ce2-1bd9-75c3-e174e95bbd48@crowcastle.net> Message-ID: <5394e652-d6b5-4789-1d57-7b0b9db95c87@crowcastle.net> Here's the patch. It should be compatible with existing servers, creating a new hiscores directory and storing the information there, initializing the overall scores from the old table.  The hiscore command is updated to add a '-s' option to show the scores for individual skills. I had to tweak the mining arch to have a different subtype as that's what the new scores key off of.  I don't think there are any mining pickaxes in the game yet, so this shouldn't impact anyone. On 2021-01-02 12:53, Kevin Zheng wrote: > On 1/2/21 11:40 AM, Preston Crow wrote: >> I have a change to track per-skill high scores that I was meaning to >> put in.  Should I do it now, or wait until after the release? (I've >> been running it on my server for a while.) > > Would you mind attaching the patch here? If it's not so big, it would > be a fun addition to 1.75.0. > > Thanks, > Kevin -------------- next part -------------- A non-text attachment was scrubbed... Name: hiscore.patch Type: text/x-patch Size: 12863 bytes Desc: not available URL: From nicolas.weeger at laposte.net Mon Jan 4 12:23:59 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Mon, 04 Jan 2021 19:23:59 +0100 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: <5394e652-d6b5-4789-1d57-7b0b9db95c87@crowcastle.net> References: <5394e652-d6b5-4789-1d57-7b0b9db95c87@crowcastle.net> Message-ID: <2436452.FWRjY3C5Pg@gros> Hello. Couldn't you track skills by name instead of subtype? I'm definitely against splitting harvesting skills... Best regards Nicolas Le dimanche 3 janvier 2021, 15:36:14 CET Preston Crow a écrit : > Here's the patch. > > It should be compatible with existing servers, creating a new hiscores > directory and storing the information there, initializing the overall > scores from the old table. The hiscore command is updated to add a '-s' > option to show the scores for individual skills. > > I had to tweak the mining arch to have a different subtype as that's > what the new scores key off of. I don't think there are any mining > pickaxes in the game yet, so this shouldn't impact anyone. > > On 2021-01-02 12:53, Kevin Zheng wrote: > > On 1/2/21 11:40 AM, Preston Crow wrote: > >> I have a change to track per-skill high scores that I was meaning to > >> put in. Should I do it now, or wait until after the release? (I've > >> been running it on my server for a while.) > > > > Would you mind attaching the patch here? If it's not so big, it would > > be a fun addition to 1.75.0. > > > > Thanks, > > Kevin From pc-crossfire06 at crowcastle.net Mon Jan 4 12:37:52 2021 From: pc-crossfire06 at crowcastle.net (Preston Crow) Date: Mon, 4 Jan 2021 13:37:52 -0500 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: <2436452.FWRjY3C5Pg@gros> References: <5394e652-d6b5-4789-1d57-7b0b9db95c87@crowcastle.net> <2436452.FWRjY3C5Pg@gros> Message-ID: It's much simpler to have a number that can be used as an array index. Splitting the harvesting skills simply means there is a case statement for each one instead of a single case statement.  That's the only change required. On 2021-01-04 13:23, Nicolas Weeger wrote: > Hello. > > > Couldn't you track skills by name instead of subtype? > > I'm definitely against splitting harvesting skills... > > > > Best regards > > > Nicolas > > > Le dimanche 3 janvier 2021, 15:36:14 CET Preston Crow a écrit : >> Here's the patch. >> >> It should be compatible with existing servers, creating a new hiscores >> directory and storing the information there, initializing the overall >> scores from the old table. The hiscore command is updated to add a '-s' >> option to show the scores for individual skills. >> >> I had to tweak the mining arch to have a different subtype as that's >> what the new scores key off of. I don't think there are any mining >> pickaxes in the game yet, so this shouldn't impact anyone. >> >> On 2021-01-02 12:53, Kevin Zheng wrote: >>> On 1/2/21 11:40 AM, Preston Crow wrote: >>>> I have a change to track per-skill high scores that I was meaning to >>>> put in. Should I do it now, or wait until after the release? (I've >>>> been running it on my server for a while.) >>> Would you mind attaching the patch here? If it's not so big, it would >>> be a fun addition to 1.75.0. >>> >>> Thanks, >>> Kevin From nicolas.weeger at laposte.net Mon Jan 4 13:25:16 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Mon, 04 Jan 2021 20:25:16 +0100 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: References: <2436452.FWRjY3C5Pg@gros> Message-ID: <2510151.NrjH0cYDHk@gros> > It's much simpler to have a number that can be used as an array index. > > Splitting the harvesting skills simply means there is a case statement > for each one instead of a single case statement. That's the only change > required. It requires updating the archetypes, too :) Also, "harvesting" is generic and not actually used, only mining and fishing exist, I think. The goal of 'harvesting' is to be declined in various skills which change only on their name, without changing the server code, therefore they should share the same subtype... Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Tue Jan 5 06:42:59 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Tue, 05 Jan 2021 13:42:59 +0100 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: References: <2436452.FWRjY3C5Pg@gros> Message-ID: <2611911.QWYS9Xjm97@gros> Hello. Here's a modified version of the patch which doesn't need changing the subtype for harvesting :) I think / hope it works the same as your patch! :) Best regards Nicolas Le lundi 4 janvier 2021, 13:37:52 CET Preston Crow a écrit : > It's much simpler to have a number that can be used as an array index. > > Splitting the harvesting skills simply means there is a case statement > for each one instead of a single case statement. That's the only change > required. -------------- next part -------------- A non-text attachment was scrubbed... Name: hiscore2.patch Type: text/x-patch Size: 10571 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Mon Jan 11 11:14:22 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Mon, 11 Jan 2021 18:14:22 +0100 Subject: [crossfire] Playing Valkyrie fun :) Message-ID: <1751259.WPkmNEMICo@gros> Hello. I've been playing a Valkyrie follower, so I wanted to share some points & fun things - everything is my personal opinion of course :p For reminder, Valkyrie forbids all magic spells. I choose to not use items or help from my other players, else it would have been too easy :) Fun fact: even if all magic is forbidden, potions, wands/rods/scrolls are allowed. Of course it's critical for the game, but maybe the Valkyrie lore (which states that magic is filthy) should be slightly adjusted to reflect that. Maybe Valkyrie hates the follower channeling magic herself, but not magic which was "tamed"? Since I can't cast spells, I can't use consecrate on an altar, so can't have one in my private apartments, and thus can't worship my god privately :) Of course, no town portal either, which makes it hard to gather loot :s I don't think town portal appears in scrolls/rods/wands in shops. There are scrolls as a reward in a single map (unless I'm mistaking), but to get it, you have to fight some monsters that my level 94 dragon couldn't really hit... So I guess for a level 35 user it's impossible :D I obviously have to rely on what I find in maps or in shops for balms (especially return home) and potions of protection (no praying spell), until I'm high level enough to create those items through alchemy. Since I can't use marking runes, I can't build (through building materials) "connected" items, I think - you need to put a marking rune on the spot, and even if the spell appeared in scrolls, I'm not sure I could specify the actual text to mark down. The only god-given item I can get, after leveling a lot, is a live-saving amulet, which doesn't have much in term of properties. I would say it could have some nice stats to compensate (life-saving isn't too rare I think). Not being able to use magic, I can't cast "create food" to make waters for alchemy (same issue as marking rune, can't specify the precise food even if I found a scroll). So I'll have to gather a lot to make all those required waters for various formula... Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Mon Jan 11 11:18:24 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Mon, 11 Jan 2021 18:18:24 +0100 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: <2611911.QWYS9Xjm97@gros> References: <2611911.QWYS9Xjm97@gros> Message-ID: <10470901.WWBq3MNZ2z@gros> Hello. The patch has been running for a few days on invidious, no issue so far. Guess I'll commit it soon. Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From robert at timetraveller.org Mon Jan 11 18:54:39 2021 From: robert at timetraveller.org (Robert Brockway) Date: Tue, 12 Jan 2021 10:54:39 +1000 (AEST) Subject: [crossfire] Playing Valkyrie fun :) In-Reply-To: <1751259.WPkmNEMICo@gros> References: <1751259.WPkmNEMICo@gros> Message-ID: On Mon, 11 Jan 2021, Nicolas Weeger wrote: > Hello. > > > I've been playing a Valkyrie follower, so I wanted to share some points & fun > things - everything is my personal opinion of course :p I've got a regular character that's a follower of Valkyrie. > Fun fact: even if all magic is forbidden, potions, wands/rods/scrolls are > allowed. Of course it's critical for the game, but maybe the Valkyrie lore > (which states that magic is filthy) should be slightly adjusted to reflect that. > Maybe Valkyrie hates the follower channeling magic herself, but not magic > which was "tamed"? After several years of playing the character I ended up modifying Valkyrie to allow her followers to use Turning spells only. I also wanted to block her followers from using wands/rods but it turns out the server doesn't currently support that. There may have been a plan to re-enable it. Valkyrie's enemy list is so long that Turning spells should be a good source of experience to offset the loss of wands/rods. There was a thread in May. http://mailman.metalforge.org/pipermail/crossfire/2020-May/013646.html Rob From kevinz5000 at gmail.com Wed Jan 13 19:09:30 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Wed, 13 Jan 2021 19:09:30 -0600 Subject: [crossfire] Crossfire 1.75.0 release Message-ID: <2b5efee1-1d52-1e7f-28ad-0ef0cf9ec0f1@gmail.com> Hi there, I'm pleased to announce that Crossfire 1.75.0 is available. This release brings many changes, fixes, and improvements to the server, maps, and clients. The server now uses Python 3. If you run an existing server, you may need to use the cfdb_convert utility to convert some databases into a format used in Python 3. Briefly: $ cd /var/crossfire/ $ cfdb_convert --auto Since GTKv2 is now EoL'd, this will likely also be the last GTKv2 client release that uses Gtk+ 2. Stay tuned for a separate announcement about the JXClient 1.75.0 release. Thanks to all of the contributors who made this release possible. If you run a server, you will need the 'crossfire' and 'crossfire-maps' release tarballs. Sounds are now distributed with the crossfire-client release and installed by default. Checksums for the release follow: SHA256 (crossfire-1.75.0.tar.gz) = 0441832166f6eece9d64a8a724b149b2fe279cfdd0e63f478c2aaf958f17b605 SHA256 (crossfire-client-1.75.0.tar.gz) = f9e320650292e0dae1236c1d14396bf5818428ee5ea23865a9849d203e4368a7 SHA256 (crossfire-maps-1.75.0.tar.gz) = dda1bb9bf6477791b643ad78dac615bb038bf2bc795eb1eaf353ac7eabba75d9 Regards, Kevin -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From kevinz5000 at gmail.com Wed Jan 13 21:39:48 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Wed, 13 Jan 2021 21:39:48 -0600 Subject: [crossfire] Git for arch, maps, server, and client Message-ID: <3fcd0908-36de-cab0-6d66-f3f5e3b7bac7@gmail.com> Hi there, Based on IRC and private conversations, it seems that many current developers and contributors would prefer to use Git. Therefore, I'm proposing to migrate the arch, maps, and server to Git. Some arguments in favor of Git: - Non-committing contributors can more easily create bite-sized, reviewable patches using Git. - Forks would preserve revision history, making it easier to re- integrate changes. Currently, forks tend to start from a source release and changes subsequently diverge. - Fast branching and tagging. Some arguments against Git: - It's difficult to understand and use. Fortunately, Git seems to be pretty popular these days, and there are many resources for beginners. - Non-linear history is confusing. I'd like to propose that Crossfire maintain linear history by enforcing fast-forward only commits to master. - Large initial clones. Currently, the initial clone of the server is 24 MiB, the maps 91 MiB, the archs 26.7 MiB, and the client 14 MiB. - Loss of monotonically-increasing revision identifiers. Sorry. For a preview of what this might look like, I've pushed crossfire-server, crossfire-arch, and crossfire-client repositories to SourceForge: https://sourceforge.net/p/crossfire/_list/git Please consider these repositories read-only at this point, because I will be mirroring them by hand from SVN. I appreciate comments and thoughts about the proposed migration. Regards, Kevin From nicolas.weeger at laposte.net Thu Jan 14 02:40:22 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Thu, 14 Jan 2021 09:40:22 +0100 Subject: [crossfire] Playing Valkyrie fun :) In-Reply-To: References: <1751259.WPkmNEMICo@gros> Message-ID: <1850248.Z8q4DieN0z@gros> Hello. Thanks for the mail reminder, I had forgotten that story ^.^ IMO, rods/wands are really important right now, as some really useful spells are not available as potions unless I'm mistaking. So even though I'm fine with totally forbidding them to a Valkyrie follower, I think it'd be great to first ensure "critical" spells are all available somehow. Best regards Nicolas Le mardi 12 janvier 2021, 10:54:39 CET Robert Brockway a écrit : > On Mon, 11 Jan 2021, Nicolas Weeger wrote: > > Hello. > > > > > > I've been playing a Valkyrie follower, so I wanted to share some points & > > fun things - everything is my personal opinion of course :p > > I've got a regular character that's a follower of Valkyrie. > > > Fun fact: even if all magic is forbidden, potions, wands/rods/scrolls are > > allowed. Of course it's critical for the game, but maybe the Valkyrie lore > > (which states that magic is filthy) should be slightly adjusted to reflect > > that. Maybe Valkyrie hates the follower channeling magic herself, but not > > magic which was "tamed"? > > After several years of playing the character I ended up modifying Valkyrie > to allow her followers to use Turning spells only. > > I also wanted to block her followers from using wands/rods but it > turns out the server doesn't currently support that. There may have been > a plan to re-enable it. > > Valkyrie's enemy list is so long that Turning spells should be a good > source of experience to offset the loss of wands/rods. > > There was a thread in May. > > http://mailman.metalforge.org/pipermail/crossfire/2020-May/013646.html > > Rob > _______________________________________________ > crossfire mailing list > crossfire at metalforge.org > http://mailman.metalforge.org/mailman/listinfo/crossfire -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Thu Jan 14 02:45:01 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Thu, 14 Jan 2021 09:45:01 +0100 Subject: [crossfire] Git for arch, maps, server, and client In-Reply-To: <3fcd0908-36de-cab0-6d66-f3f5e3b7bac7@gmail.com> References: <3fcd0908-36de-cab0-6d66-f3f5e3b7bac7@gmail.com> Message-ID: <3714306.axgX60CESI@gros> Hello. > Based on IRC and private conversations, it seems that many current > developers and contributors would prefer to use Git. Therefore, I'm > proposing to migrate the arch, maps, and server to Git. Fine by me :) > - Non-committing contributors can more easily create bite-sized, > reviewable patches using Git. Yup, makes it easy to comment specific lines of code when needed, and see proposed changes without having to download the file. > - It's difficult to understand and use. Fortunately, Git seems to be > pretty popular these days, and there are many resources for beginners. If people encounter difficulties, I'm sure many will be ready to help... We'll be able to make a good FAQ if needed. > - Non-linear history is confusing. I'd like to propose that Crossfire > maintain linear history by enforcing fast-forward only commits to > master. Yes, mandatory IMO. If it can be forbidden in some options on SF, then let's forbid. > - Large initial clones. Currently, the initial clone of the server is > 24 MiB, the maps 91 MiB, the archs 26.7 MiB, and the client 14 MiB. Not that big for today, and only to do once. Note that it's possible I think to only get the latest revision without getting the whole history (it probably is "--depth 1", will need to check to ensure). > - Loss of monotonically-increasing revision identifiers. Sorry. Did we ever actually use that? I mean, was it at any point critical? Thanks :) Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Thu Jan 14 03:24:28 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Thu, 14 Jan 2021 10:24:28 +0100 Subject: [crossfire] Crossfire 1.75.0 release engineering In-Reply-To: <5394e652-d6b5-4789-1d57-7b0b9db95c87@crowcastle.net> References: <5394e652-d6b5-4789-1d57-7b0b9db95c87@crowcastle.net> Message-ID: <2037340.7Ah49lqIoi@gros> Hello. Patch (slightly modified by me so send flames here and not to Preston :)) commited as r21762, thanks :) Best regards Nicolas Le dimanche 3 janvier 2021, 15:36:14 CET Preston Crow a écrit : > Here's the patch. > > It should be compatible with existing servers, creating a new hiscores > directory and storing the information there, initializing the overall > scores from the old table. The hiscore command is updated to add a '-s' > option to show the scores for individual skills. > > I had to tweak the mining arch to have a different subtype as that's > what the new scores key off of. I don't think there are any mining > pickaxes in the game yet, so this shouldn't impact anyone. > > On 2021-01-02 12:53, Kevin Zheng wrote: > > On 1/2/21 11:40 AM, Preston Crow wrote: > >> I have a change to track per-skill high scores that I was meaning to > >> put in. Should I do it now, or wait until after the release? (I've > >> been running it on my server for a while.) > > > > Would you mind attaching the patch here? If it's not so big, it would > > be a fun addition to 1.75.0. > > > > Thanks, > > Kevin -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Thu Jan 14 04:04:14 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Thu, 14 Jan 2021 11:04:14 +0100 Subject: [crossfire] Crossfire 1.75.0 release In-Reply-To: <2b5efee1-1d52-1e7f-28ad-0ef0cf9ec0f1@gmail.com> References: <2b5efee1-1d52-1e7f-28ad-0ef0cf9ec0f1@gmail.com> Message-ID: <9215532.HOMgmvWcpj@gros> Hello. Thanks for the release work :) Best regards Nicolas Le mercredi 13 janvier 2021, 19:09:30 CET Kevin Zheng a écrit : > Hi there, > > I'm pleased to announce that Crossfire 1.75.0 is available. > > This release brings many changes, fixes, and improvements to the server, > maps, and clients. > > The server now uses Python 3. If you run an existing server, you may > need to use the cfdb_convert utility to convert some databases into a > format used in Python 3. Briefly: > > $ cd /var/crossfire/ > $ cfdb_convert --auto > > Since GTKv2 is now EoL'd, this will likely also be the last GTKv2 client > release that uses Gtk+ 2. > > Stay tuned for a separate announcement about the JXClient 1.75.0 release. > > Thanks to all of the contributors who made this release possible. > > If you run a server, you will need the 'crossfire' and 'crossfire-maps' > release tarballs. Sounds are now distributed with the crossfire-client > release and installed by default. > > Checksums for the release follow: > > SHA256 (crossfire-1.75.0.tar.gz) = > 0441832166f6eece9d64a8a724b149b2fe279cfdd0e63f478c2aaf958f17b605 > SHA256 (crossfire-client-1.75.0.tar.gz) = > f9e320650292e0dae1236c1d14396bf5818428ee5ea23865a9849d203e4368a7 > SHA256 (crossfire-maps-1.75.0.tar.gz) = > dda1bb9bf6477791b643ad78dac615bb038bf2bc795eb1eaf353ac7eabba75d9 > > Regards, > Kevin -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Thu Jan 14 04:19:20 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Thu, 14 Jan 2021 11:19:20 +0100 Subject: [crossfire] Archetypes collection changes proposal In-Reply-To: <1906015.4M1vBobDh4@gros> References: <1906015.4M1vBobDh4@gros> Message-ID: <1836028.lVJfMzUefp@gros> Hello. I've committed my (massive) changes following the 1.75 release :) It is now possible to run the server without "packed" archetypes, faces, treasures, ... ("assets"). But you still can "pack" everything in single files for speed or distribution reasons :) There may be some issues yet, but the code has been running on invidious since a few weeks, so major bugs are hopefully ironed out. To correctly compile and install, you must symlink "maps" in the server/lib directory, like the "arch" one. I think the first "make install" (or "make") will fail in "lib" on the file "crossfire.arc", in which case from the server root do ( cd lib && make do-collect ) to generate that file. Note that "do-collect" has been changed to use the server (and not the Perl script), and that it isn't (yet) totally efficient as it will run the server 3 times... I will fix that at some point in the future. If you wish to run against the raw "arch" repository: - rm crossfire.{arc,tar,trs,face} from the "share" install directory - maybe remove those files from the "server/lib" directory and replace them with empty files (through "touch") - symlink "arch" in the "share" directory, along the "maps" one Note that you may very well have both crossfire.{arc,...} along the "arch" symlink, it should work (that's the aim of the no collect mechanism after all :D so please report bugs if you find any), but it may be slower to start the server. The explanation for the slower start is that the server will first process the "packed" crossfire.{arc,...} files, then the subdirectories. During so, it will update notably its archetypes definitions, which may take some time (especially when running in debug). Of course the disk speed is also an issue, especially for reading all the PNG files. The packed "client images" is a tar file, uncompressed. In the future this .tar may be extended to contain also arches, face, and such, and maybe compressed too. Too many technical changes were introduced so I won't list'em all :) The major point about archetypes, faces, animations, treasures and others ("assets") is that their "get_xxx" function will NEVER return NULL anymore. If you need to check for existence, there is a "try_find" (or "find") function. Function documentation is hopefully updated to reflect that. Internally, the code works by keeping assets' pointer valid all the time and updating the underlying structure with updated version. So during initialisation, if an archetype references a not-yet-known treasure list, this treasure list is internally created empty. When the treasure list is loaded (from the .trs file), this empty treasure is updated. After loading all assets, the server will abort if one was referenced but not defined (ie you ask for a treasure list that is never actually defined), except for faces which may be left undefined (reason: too many existing faces aren't defined right now). There's a command-line flag to allow going on, in which case undefined items are blank (ie empty treasure list, empty face, and such) - the server should not crash anyway, but you may have strange behaviours. I'll of course reply to inquiries on technical questions :) Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From robert at timetraveller.org Thu Jan 14 19:04:28 2021 From: robert at timetraveller.org (Robert Brockway) Date: Fri, 15 Jan 2021 11:04:28 +1000 (AEST) Subject: [crossfire] Git for arch, maps, server, and client In-Reply-To: <3fcd0908-36de-cab0-6d66-f3f5e3b7bac7@gmail.com> References: <3fcd0908-36de-cab0-6d66-f3f5e3b7bac7@gmail.com> Message-ID: On Wed, 13 Jan 2021, Kevin Zheng wrote: > Based on IRC and private conversations, it seems that many current developers > and contributors would prefer to use Git. Therefore, I'm proposing to migrate > the arch, maps, and server to Git. I think it is a great idea. > Please consider these repositories read-only at this point, because I will be > mirroring them by hand from SVN. Does this means that SVN history will be retained? Cheers, Rob From kevinz5000 at gmail.com Thu Jan 14 22:18:08 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Thu, 14 Jan 2021 22:18:08 -0600 Subject: [crossfire] Git for arch, maps, server, and client In-Reply-To: References: <3fcd0908-36de-cab0-6d66-f3f5e3b7bac7@gmail.com> Message-ID: <59ff5982-eb31-0f87-c0f0-3f1a3d93806b@gmail.com> On 1/14/21 7:04 PM, Robert Brockway wrote: >> Please consider these repositories read-only at this point, because I >> will be mirroring them by hand from SVN. > > Does this means that SVN history will be retained? Yes, of course. The SVN history was imported and currently synced to SVN using git-svn. The 'new' Git repositories have commits still labeled 'CVS' from a long time ago. Regards, Kevin From nicolas.weeger at laposte.net Sun Jan 17 03:38:20 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Sun, 17 Jan 2021 10:38:20 +0100 Subject: [crossfire] Sounds Message-ID: <3804542.fSRH4qep5S@gros> Hello. The "sounds" repository contains various sounds for use with the clients. Unfortunately many don't have a proper license attached (especially the old ones). I therefore propose to remove files with an unknown origin, to (re)start with a clean state. Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From nicolas.weeger at laposte.net Sun Jan 17 12:22:50 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Sun, 17 Jan 2021 19:22:50 +0100 Subject: [crossfire] 'get' and 'drop' Message-ID: <7575362.MnPIMrqBV3@gros> Hello. I'd like to rework 'get' (and 'take' and 'drop' (and 'dropall') to be more consistent. Syntax for both could be (samples with get): - 'get all' or 'get *' => all items - 'get part of name' => all items matching 'part of name', like now - 'get *magic' => all known magic items ; same with '*cursed', then item types ('*armour', '*weapon', '*ring', ...). This is possible with pickup modes, so I don't see why it shouldn't be possible with the simple command. 'dropall' already implements that - 'get #n' => the n-th item below the user or in the container. Could work when dropping from a opened container too. 1-based because players aren't geek :) Does that look all right? Am I missing something? Best regards Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: From kevinz5000 at gmail.com Wed Jan 20 23:22:11 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Wed, 20 Jan 2021 21:22:11 -0800 Subject: [crossfire] Sounds In-Reply-To: <3804542.fSRH4qep5S@gros> References: <3804542.fSRH4qep5S@gros> Message-ID: <6c009dcd-bc22-5d79-4be8-51d4f9573a71@gmail.com> On 1/17/21 1:38 AM, Nicolas Weeger wrote: > The "sounds" repository contains various sounds for use with the clients. > > Unfortunately many don't have a proper license attached (especially the old > ones). > > I therefore propose to remove files with an unknown origin, to (re)start with a > clean state. I think this proposal seems reasonable. This might also be a good opportunity to improve the quality of the default set of sounds. From kevinz5000 at gmail.com Wed Jan 20 23:28:42 2021 From: kevinz5000 at gmail.com (Kevin Zheng) Date: Wed, 20 Jan 2021 21:28:42 -0800 Subject: [crossfire] 'get' and 'drop' In-Reply-To: <7575362.MnPIMrqBV3@gros> References: <7575362.MnPIMrqBV3@gros> Message-ID: On 1/17/21 10:22 AM, Nicolas Weeger wrote: > I'd like to rework 'get' (and 'take' and 'drop' (and 'dropall') to be more > consistent. > > Syntax for both could be (samples with get): > - 'get all' or 'get *' => all items > > - 'get part of name' => all items matching 'part of name', like now > > - 'get *magic' => all known magic items ; same with '*cursed', then item types > ('*armour', '*weapon', '*ring', ...). This is possible with pickup modes, so I > don't see why it shouldn't be possible with the simple command. 'dropall' > already implements that > > - 'get #n' => the n-th item below the user or in the container. Could work > when dropping from a opened container too. 1-based because players aren't geek > :) This seems reasonable; no objections from me. I'd also like to mention that I don't actually use these commands much, preferring to click in the GUI. I don't think these changes would affect me much at all. Thanks, Kevin From leaf at real-time.com Mon Jan 25 13:53:18 2021 From: leaf at real-time.com (Rick Tanner) Date: Mon, 25 Jan 2021 13:53:18 -0600 Subject: [crossfire] Crossfire 1.75.0 release In-Reply-To: <2b5efee1-1d52-1e7f-28ad-0ef0cf9ec0f1@gmail.com> References: <2b5efee1-1d52-1e7f-28ad-0ef0cf9ec0f1@gmail.com> Message-ID: <68290901-2005-7c04-7b46-537d9e0527b1@real-time.com> FYI, the release is now making it's way through Debian and related distros for availability. Format: 1.8 Date: Mon, 25 Jan 2021 21:05:17 +0200 Source: crossfire-client Architecture: source Version: 1.75.0-1 Distribution: unstable Urgency: medium Maintainer: Kari Pahula Changed-By: Kari Pahula Changes: crossfire-client (1.75.0-1) unstable; urgency=medium . * New upstream release. * Standards-Version 4.5.1 Checksums-Sha1: 1716800b505a540f226876b77ea07ebd1ab543cb 1967 crossfire-client_1.75.0-1.dsc ac1b360a9a2cdbcf8d6b901d9d2978462b32bbfa 1087171 crossfire-client_1.75.0.orig.tar.gz f5ce03d745506d9389af59a0aaa741686d1cd70e 9444 crossfire-client_1.75.0-1.debian.tar.xz 3177e1db0dc09ae6862ad35e379e18dda9947cd8 15664 crossfire-client_1.75.0-1_source.buildinfo Checksums-Sha256: 48d38f5fac09f03ff144b41d87a85cded45a6408548a8efa92487ba45507e737 1967 crossfire-client_1.75.0-1.dsc f9e320650292e0dae1236c1d14396bf5818428ee5ea23865a9849d203e4368a7 1087171 crossfire-client_1.75.0.orig.tar.gz 1671d470d298fa6dbf1f2374f0b6546f57c98c68220436fc5f63aa74c6e9f1a9 9444 crossfire-client_1.75.0-1.debian.tar.xz 7e7546a8a46700638c00818c2cdfe8398f30d298f0d09292e5a0119bfdc24587 15664 crossfire-client_1.75.0-1_source.buildinfo Files: 9f2b10db62106e6f92c6e39703ce5e00 1967 games optional crossfire-client_1.75.0-1.dsc ac1db49a1747e4343d74bcb69a91df68 1087171 games optional crossfire-client_1.75.0.orig.tar.gz 88463eb4f3b49badfb0f164dd0ab9b3a 9444 games optional crossfire-client_1.75.0-1.debian.tar.xz 806af8037e60a42e8ea44ddd73a6ae95 15664 games optional crossfire-client_1.75.0-1_source.buildinfo From nicolas.weeger at laposte.net Wed Jan 27 12:02:07 2021 From: nicolas.weeger at laposte.net (Nicolas Weeger) Date: Wed, 27 Jan 2021 19:02:07 +0100 Subject: [crossfire] 'get' and 'drop' In-Reply-To: <7575362.MnPIMrqBV3@gros> References: <7575362.MnPIMrqBV3@gros> Message-ID: <6208368.XMggHn8Dg3@gros> Hello. Patch for this rework available on https://sourceforge.net/p/crossfire/patches/385/ Comments and suggestions welcome of course :) Best regards Nicolas Le dimanche 17 janvier 2021, 19:22:50 CET Nicolas Weeger a écrit : > Hello. > > > I'd like to rework 'get' (and 'take' and 'drop' (and 'dropall') to be more > consistent. > > Syntax for both could be (samples with get): > - 'get all' or 'get *' => all items > > - 'get part of name' => all items matching 'part of name', like now > > - 'get *magic' => all known magic items ; same with '*cursed', then item > types ('*armour', '*weapon', '*ring', ...). This is possible with pickup > modes, so I don't see why it shouldn't be possible with the simple command. > 'dropall' already implements that > > - 'get #n' => the n-th item below the user or in the container. Could work > when dropping from a opened container too. 1-based because players aren't > geek > :) > > Does that look all right? Am I missing something? > > > Best regards > > > Nicolas -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: This is a digitally signed message part. URL: