Map Merger: различия между версиями

imported>Oranges
м (bad wrong)
imported>Oranges
(Fix map merger)
Строка 1: Строка 1:
'''
== Every single thing on this page is blatantly wrong and needs rewriting ==
'''


Before any change to a map, it is good to use the Map Merger tools. What these do is cut down the number of lines which Dream Maker thinks have changed, since it usually interprets any change to the map as a rewrite of all ~8000 lines.
Before any change to a map, it is good to use the Map Merger tools. In a nutshell, it rewrites the map to minimize differences between different versions of the map (DreamMakers map editor rewrites a lot of the tile keys). This makes the git diff between different map changes much smaller. More recently a new way of laying out the map was invented by Remie, called TGM, this helps to further reduce conflicts in the map files.


The Map Merger tools presently only work for windows as they utilize .bat files.
This is good for a few reasons
 
1) Maintainers can actually verify the changes you are making are what you say they are by simply viewing the diff (For small changes at least)
 
2) The less changes there are in any given map diff, the easier it is for git to merge it without running into unexpected conflicts, which in most cases you have to either manually resolve or require you to remap your changes
 
 
However - to do all this is going to require you to put some elbow grease into understanding the map merger tool.


If you have difficulty using these tools, ask for help in [[Community|#coderbus]]
If you have difficulty using these tools, ask for help in [[Community|#coderbus]]
Строка 12: Строка 16:
{|
{|
|-
|-
|'''1. Install Java'''
|'''1. Install Python 3.5 or greater'''
|If you don't have Java already installed it can be downloaded from: [http://www.java.com/en/download/index.jsp]
|If you don't have Python already installed it can be downloaded from: [https://www.python.org/downloads/] - make sure you grab the latest python 3, again, it must be 3.5 or greater
|-
|-
|'''2. PATH Java'''
|'''2. PATH Python'''
|To test if Java is in your PATH, open Git Bash and type "Java". If it says "unknown command" you will need to add JAVA/bin to your PATH. See here for how: [https://www.java.com/en/download/help/path.xml]
|This step is mostly applicable to windows users, you must make sure you ask the windows installer to add python to your path.  
| [https://file.house/DA6H.png]
|-
|-
|'''3. Prepare Maps'''
|'''3. Prepare Maps'''
Строка 25: Строка 30:
|-
|-
|'''5. Clean map'''
|'''5. Clean map'''
|Run "Run Map Merge.bat" in the tools/mapmerge/ directory. Don't worry if it says there are ~8000 differences, just ignore that for now.
|Run "Run Map Merge - TGM.bat" in the tools/mapmerge/ directory.  
|-
|-
|'''7. Check differences'''
|'''7. Check differences'''
|Use your application of choice to look at the differences between revisions of your code. If it's reading ~8000 line differences then you've done something wrong, go back and try again.
|Use your git application of choice to look at the differences between revisions of your code and commit the result.
|-
|-
|'''8. Commit'''
|'''8. Commit'''

Версия от 05:41, 5 апреля 2016

Before any change to a map, it is good to use the Map Merger tools. In a nutshell, it rewrites the map to minimize differences between different versions of the map (DreamMakers map editor rewrites a lot of the tile keys). This makes the git diff between different map changes much smaller. More recently a new way of laying out the map was invented by Remie, called TGM, this helps to further reduce conflicts in the map files.

This is good for a few reasons

1) Maintainers can actually verify the changes you are making are what you say they are by simply viewing the diff (For small changes at least)

2) The less changes there are in any given map diff, the easier it is for git to merge it without running into unexpected conflicts, which in most cases you have to either manually resolve or require you to remap your changes


However - to do all this is going to require you to put some elbow grease into understanding the map merger tool.

If you have difficulty using these tools, ask for help in #coderbus

Using the tools

1. Install Python 3.5 or greater If you don't have Python already installed it can be downloaded from: [1] - make sure you grab the latest python 3, again, it must be 3.5 or greater
2. PATH Python This step is mostly applicable to windows users, you must make sure you ask the windows installer to add python to your path. [2]
3. Prepare Maps Run "Prepare Maps.bat" in the tools/mapmerge/ directory.
4. Edit your map Make your changes to the map here. Remember to save them!
5. Clean map Run "Run Map Merge - TGM.bat" in the tools/mapmerge/ directory.
7. Check differences Use your git application of choice to look at the differences between revisions of your code and commit the result.
8. Commit Your map is now ready to be committed, rejoice and wait for conflicts.
Hosting Hosting a serverSetting up the databaseWorking with /tg/station as an upstream repository
Contributing Guide to contributing to the gameSetting up gitDownloading the source codeReporting issuesChangelogs
Coding Understanding SS13 codeSS13 for experienced programmersCode docsCoding standardsGetting Your Pull AcceptedBinary flags‎Text FormattingMySQL
Mapping Guide to mappingMap mergerGuide to door access
Spriting Guide to spritingResolving icon conflicts
Wiki Guide to contributing to the wikiWikicodeAutowiki