- Git - Index
- Arch Retro
- Spell Shuffle
- Git ChangeLog Index
- Archetypes ChangeLog
- Client ChangeLog
- JXClient ChangeLog
- Maps ChangeLog
- Metaserver ChangeLog
- Server ChangeLog
- Sounds ChangeLog
- Gridarta ChangeLog
- Arch Retro ChangeLog
- Spell Shuffle ChangeLog
- GitStats Index
- Archetypes GitStats
- Client GitStats
- JXClient GitStats
- Maps GitStats
- Metaserver GitStats
- Server Gitstats
- Sounds GitStats
- Gridarta GitStats
- Arch Retro GitStats
- Spell Shuuffle GitStats
- Code Stats Index
- Archetypes Code Stats
- Client Code Stats
- JXClient Code Stats
- Maps Code Stats
- Metaserver Code Stats
- Server Code Stats
- Sounds Code Stats
- Gridarta Code Stats
- Arch Retro Code Stats
- Spell Shuffle Code Stats
Git - Index
Crossfire Git Repository
On 2021-May-11, Crossfire migrated from SVN to Git
The entire Crossfire project is ~896M as of 2021-Jul-6.
The general commands clone (download) an individual module (archetypes,GTKv2 client, JXClient, maps, server, metaserver, sounds, et al) is the following:
- Archetypes (at 79M as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/crossfire-arch crossfire-crossfire-arch
- GTKv2 Client (at 18M as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/crossfire-client crossfire-crossfire-client
- JX Client (at 356M as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/jxclient crossfire-jxclient
- Maps (at 380M as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/crossfire-maps crossfire-crossfire-maps
- Metaserver (at 536K as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/metaserver crossfire-metaserver
- Server (at 42M as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/crossfire-server crossfire-crossfire-server
- Sounds (at 2.5M as of 2021-Jul-6)
- git clone https://git.code.sf.net/p/crossfire/crossfire-sounds crossfire-crossfire-sounds
Sending in Patches:
- Send patches on a bug fix or feature enhancement basis individually, and do not make mega-patches. A diff that changes 10 things is more difficult for developers to review and understand as unrelated changes might be going on. It is also harder to reject part of a patch (feature X is nice, but Y doesn't work).
- Please state in the message included with the patch what it fixes/changes. Too often, patches are just a bunch of source code, with no indication why it should be incorporated. Without such commentary, it may be difficult to even determine if the bug it fixes is still there in the source it patches. Please also state what version of crossfire the diff is for.
- When posting a patch on the patch tracker at SourceForge, please explicitly state whether or not you want that patch incorporated into the master source. Many times, a patch may be made available on an experimental basis which is not ready for widespread distribution.
- When making patches, please make context diffs. Please also include the directory that the file is in (run the diff in the top level directory). Please make 5 line context diffs - larger line context diffs are fine if you think that may make it easier.
diff -c5 (oldfile) (newfile)
You can also do diffs of entire directories. To do this, type:
diff -c5 -r (old_directory) (new_directory)
diff -c5 -r crossfire-0.90.1 crossfire-0.90.2
- Gnu diff will include files that did not exist before. Other diff programs may not do this.
- If your diff looks excessively long and you made a lot of formatting changes, you can add -w to the diff options to have it ignore whitespace. Note that this will then mean that those formatting changes will then be lost.
- There is no need to make a separate diff file for each file that is different (ie, treasure.diff, player.diff, etc). Assuming you follow steps 1-6, all the diffs can be contained in one file, and patch will deal with it just fine.
- If you need to send a map, new archetypes, or other new files where a diff doesn't make sense, a uuencoded tar file will suffice.
Submit all patches to the Sourceforge patch tracker on http://sourceforge.net/tracker/?group_id=13833&atid=313833, and mail an announcement to firstname.lastname@example.org.
Projects or code repositories for Crossfire that are using Git include:
- Gridarta is an open source (GPL) Map Editor for MMORPGs. Gridarta currently supports Angelion, Crossfire and Daimonin.
Crossfire Git Mirror
- SVN2Git mirror for Archetypes, GTKv2 Client and Server
- A 24x24 tileset intended for use with Crossfire RPG Game servers. Many images were pulled from old versions of the game (0.92.0 was a specific baseline). Crossfire's trunk GTK2 client appears to handle the different-sized tileset, but the same cannot be said for released versions. Thus, this image set is largely experimental.
- A patch for the Crossfire RPG Game server, map set (bigworld, specifically), and archetypes that re-implements the short-lived weather code that made it's way into the game in the mid-2000s.
- The patches in this repository re-add the weather functionality, with a few adjustments to make the code cleaner and/or more sensible, as well as prevent breakage from use of the same arches for non-weather cases.
- Automated build of the GTKv2 Client for Windows.
Crossfire Theme Updates
- Customized dark theme update for the GTKv2 Client
Arch2JSON code with testsuite
- Converts archetypes to a JSON output for searching, sorting, etc. web interface
- Output of cfmapper script used by Crossfire. This project is to track map changes generated by the cfmapper (Crossfire Mapper) script found in the Crossfire code base.
- Tools in Lua for rearranging tilesets. Right now, they are specifically suited for manipulating Crossfire's smoothing maps. In addition, they assume that the tiles are 32x32.