Navigation
Community
Configuring
Creating
FAQ - General
Info for Sauerbraten Users
Introduction
Known Issues
Main Page
Notes
Playing
Troubleshooting
|  | Creating > ### Workflow
Beforehand, you need to: Create a new map to work on. You only need to do this once for each map. Then, get a server to run the map or run a local server. Clients that connect to a server always run the same map as the server. In other words, the server determines what map is run. Run the client and connect to the server (using the appropriate method, depending on if you are using a remote or a local server) You can now start the normal workflow, as follows: Make changes Edit the map geometry (mapping) and add/modify entities Edit the map script Save changes locally This is good for backup purposes, and faster than a full upload to the remote servers, but it means that you and the server (and other connected clients, if any) are not running the same map! So if you are not careful, strange things may occur. When in doubt, do a full upload, as written below. How local changes work: The key principle is that the MAPNAME.tar.gz file is used as an indicator of the map version, not the files in the map directory, MAPNAME/ (map.js, map.ogz, entities.js). So you can change the files in the map directory, and the client (or server, for that matter) won't think they are of a different version that the current one (if it did think there was a version mismatch, it would download the current version from the central servers). How to save local changes: /savemap saves the OGZ /exportentities saves the entities (this shows a GUI for the filename; you can also use /do_exportentities NAME) You can edit the map.js (and other script files) in a text editor of your choosing. Where the map directory is: It is in your home directory, which is intensityengine_client or .intensityengine_client, in your operating system user's home directory - under Documents and Settings on XP, Users on Vista, ~ on Linux, etc. Inside the home directory, map directories are in packages/base (packages is where all assets are stored, and base is where maps are stored). Do a full upload When you select 'upload map' from the menu, the client will Save the map geometry into map.ogz Save the map entities into entities.json Package the files in the map directory into a .tar.gz archive Upload that to the remote Syntensity servers. This new version will then be downloaded by the server you are connected to, and then all clients will run that new version as well (including yourself). There is a 'repeat last upload' option in the menu. This lets you upload the last uploaded map without needing to enter a server instance running that map. This is useful if, for example, the map script crashes the server when it tries to load the map, due to a bug - in such a case, you can't enter a server instance and upload the map normally. If this happens, edit the map script to fix it, and then do 'repeat last upload'.
Updated on Oct 22, 2009 by Alon Zakai (Version 7)