User Tools

Site Tools


dev

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
dev [2014/09/11 05:27]
127.0.0.1 external edit
dev [2024/01/19 00:21] (current)
leaf [Maps] Add link to Lander - World Map Generator page
Line 1: Line 1:
 +Back to the [[:​Start|Crossfire Main]] page
 +
 ====== Development ====== ====== Development ======
-This section provides guidelines ​and information intended for developers, map editorsor curious players who wish to modify ​the game+If you are interested in contributing to the game, this is the place to look. 
 + 
 +===== Getting Help ===== 
 +The best place to discuss the development of Crossfire is the [[https://​crossfire.real-time.com/​irc/​index.html|libera.chat irc]] or [[https://​crossfire.real-time.com/​discord/​index.html|Discord]] channels named "​crossfire"​. 
 + 
 +===== Getting Started ===== 
 +To work on game content including maps, quests, graphics, ​and the server: 
 + 
 +  - Use Git to clone the server, map, and archetype repositories 
 +  - [[:​server:​server_compiling|Install a local development server]] 
 +  - [[gridarta|Install the map editor (Gridarta)]] 
 +  - (optional) [[:​cre:​compiling|Install the Crossfire Resource Editor (CRE)]] ​to edit quests, objects, and monsters in a GUI 
 + 
 +For help with the above on Linux, see [[:​dev:​linux|Linux Development Guide]].
  
-The best place to discuss the development of Crossfire is the irc channel #​crossfire ​on the irc server chat.freenode.net (6666)+To work on the game clients:
  
-==== Getting Started ==== +  * [[:client:client_compiling|Crossfire ​GTK2 Client ​Compile Guide]] details how to install the GTK2 client ​from source. 
-Information on installing Crossfire from the source code including accessing the developmental version ([[:trunk]]): +  * [[:jxclient:​compiling|Crossfire ​Java Client Compile Guide]] details how to build JXClient ​from sources.
-  * [[server:​server_compiling|Crossfire ​Server ​Compile Guide]] details how to install the server ​from source. +
-  * [[client:client_compiling|Crossfire Client Compile Guide]] details how to install the client ​from source. +
-  * [[dev:​linux|Linux Development Guide]] details what linux environment should be used to develop from+
  
 ===== Information for Development ===== ===== Information for Development =====
Line 16: Line 28:
 ==== Archetypes ==== ==== Archetypes ====
 Information about modifying and creating new objects such as items, monsters, spells using existing code: Information about modifying and creating new objects such as items, monsters, spells using existing code:
-  * [[:Making Archetypes]] +  * [[:arch:Making Archetypes]] 
-  * [[:Custom Item Creation]] - Information and guidelines about creating custom items. +  * [[:arch:Custom Item Creation]] - Information and guidelines about creating custom items. 
-  * [[:Custom Creature Creation]] - Information and guidelines about creating custom creatures. +  * [[:arch:Custom Creature Creation]] - Information and guidelines about creating custom creatures. 
-  * [[:Graphics Guide]] - Information to aid the creation of archetypical art. +  * [[:arch:Graphics Guide]] - Information to aid the creation of archetypical art. 
-  * [[:Item Type Guide]] - Information about how different types and attributes affect objects. +  * [[:arch:Item Type Guide]] - Information about how different types and attributes affect objects. 
-  * [[:Spell Numbers]] - The "​spellnumber"​ works like an ID, it is needed to specify spells in various object-types. E.g. spellbooks, rods/​wands/​scrolls,​ firewalls... etc.+  * [[:arch:Spell Numbers]] - The "​spellnumber"​ works like an ID, it is needed to specify spells in various object-types. E.g. spellbooks, rods/​wands/​scrolls,​ firewalls... etc. 
 +  * [[:​arch:​spell_shuffle:​Spell Shuffle]] - New testing and experimental archetype branch that contains spell tweaks and spell school reorganization
  
 ==== Maps ==== ==== Maps ====
 Guides for how to design maps in crossfire that are consistent in look and feel with existing maps: Guides for how to design maps in crossfire that are consistent in look and feel with existing maps:
-  * [[:Map Making]] - This is a guide on what is an acceptable map and what is unacceptable. Also, how/where to contribute maps. +  * [[:maps:Map Making ​Guide]] - This is a guide on what is an acceptable map and what is unacceptable. Also, how/where to contribute maps. 
-  * [[:Map-Making ​Guide]] - Notes, details and suggestions on making maps +  * [[:maps:​dev:​Notes on Map Making]] - Notes, details and suggestions on making maps. 
-  * [[:Map Scale]] - A note about the scale of maps]]+  * [[:maps:​Yardstick]] - A note about the scale and size relations ​of maps compared to reality. 
 +  * [[https://​sourceforge.net/​p/​crossfire/​crossfire-server/​ci/​master/​tree/​doc/​Developers/​objects|Simple dialogs]] (go to section J, "​NPC'​s Speak out"​) 
 +  * [[user:​cavesomething:​guide_to_quest_dialogs|Python/​Quest Dialogs]] [[https://​sourceforge.net/​p/​crossfire/​crossfire-maps/​ci/​master/​tree/​python/​CFDialog.py|more information]] 
 +  * [[lander|Lander]] - World Map Generator
  
 ==== Code ==== ==== Code ====
 Guides for modification and creation of new code: Guides for modification and creation of new code:
-  * [[:Coding Style Guide]] - Guidelines for coding ​syle for the crossfire server and clients. +  * [[:Coding Style Guide]] - Guidelines for coding ​style for the crossfire server and clients. 
-  * [[dev:server_design|Server Design]]+  * [[:dev:Server Design]]
   * [[:server plugin|Server Plugins]]   * [[:server plugin|Server Plugins]]
-  * [[:Insult Generator]] and [[:Insult Generator ​Source Code]]+  * [[:cfpython:Insult Generator]]
  
 ==== Architecture ==== ==== Architecture ====
-  * [[dev:​objects]] +  * [[:dev:​objects]] 
-    * [[dev:​object_fields]] +    * [[:dev:​object_fields]] 
-  * [[dev:​misc]] +  * [[:dev:​misc]] 
-  * [[dev:god intervention]] +  * [[:dev:god intervention]] 
-  * [[dev:​shared_strings]] +  * [[:dev:​shared_strings]] 
-  * [[dev:​random-maps]] +  * [[:dev:​random-maps]] 
-  * [[dev:​random-styles]] +  * [[:dev:​random-styles]] 
-  * [[dev:​runes]] +  * [[:dev:​runes]] 
-  * [[dev:​shops]] +  * [[:dev:​shops]] 
-  * [[dev:​skills]] +  * [[:dev:​skills]] 
-  * [[dev:​spells]] +  * [[:dev:​spells]] 
-  * [[dev:​weather]] +  * [[:dev:​weather]] 
-  * [[howto:​add_body_slot]]+  * [[:howto:​add_body_slot]]
  
 ===== TODO and Ideas ===== ===== TODO and Ideas =====
Line 68: Line 84:
 ==== Crossfire Wiki ==== ==== Crossfire Wiki ====
 Contributing to the Crossfire Wiki is simplest way to assist in the development of Crossfire. Contributing to the Crossfire Wiki is simplest way to assist in the development of Crossfire.
-  * [[orphans and missing|Missing/​Orphaned Pages]] - Try to keep these pages to a minimum +  * [[:orphans and missing|Missing/​Orphaned Pages]] - Try to keep these pages to a minimum 
-  * [[wiki:​Style Guide]] - Guidance on maintaining consistency on pages of the Crossfire Wiki+  * [[:wiki:Style Guide]] - Guidance on maintaining consistency on pages of the Crossfire Wiki
  
 ===== Misc ===== ===== Misc =====
-  * [[:​Attribution Policy]] - Policy of attribution for patches. +  * [[:​sourceforge:​Attribution Policy]] - Policy of attribution for patches. 
-  * [[:Checkin Guidelines]] - SVN checkin procedure+  * [[:​sourceforge:Checkin Guidelines]] - SVN checkin procedure
   * [[:​Crossfire Release Cycle]]   * [[:​Crossfire Release Cycle]]
   * [[:​Crossfire Release Guide]] - Steps need to make an official release of crossfire.   * [[:​Crossfire Release Guide]] - Steps need to make an official release of crossfire.
-  * [[:​SourceForge Migration]] notes, tips and help+  * [[:​sourceforge:​SourceForge Migration]] notes, tips and help
   * Get together ([[:g2g]]) meeting notes, summary, proposal(s)   * Get together ([[:g2g]]) meeting notes, summary, proposal(s)
 +  * [[:​crossfire:​forks|Forks]] List of known forks of crossfire
  
dev.1410431263.txt.gz · Last modified: 2017/09/20 15:28 (external edit)