Battle For Wesnoth Lua Error
Contents |
phpBB Forum Software © phpBB Group
units are where, how much HP they have, how much gold each side has, etc. More precisely, OOS is announced when a client reads a command, such as "move Dwarf Fighter battle for wesnoth walkthrough 8,4 -> 8,5 -> 8,6" or "recruit Gryphon Rider 9,7", which is illegal or nonsensical
Battle For Wesnoth Wiki
based on its understanding of the game state. OOS could in principle be caused by network issues such as dropped packets, by battle for wesnoth review players having mismatched game files, or even by cheating, but it is commonly caused by scenario designers / add-on makers writing unsafe code. This page is about how to write WML that won't cause OOS. If https://forums.wesnoth.org/viewtopic.php?f=21&t=34374 you want to know what you should do if you get OOS in an online game, see [here]. Contents 1 Why does OOS happen? 1.1 Game begins out of sync 1.2 Game becomes out of sync 1.3 The rng 1.4 Found dependent command 2 Some examples 3 How to make your code safe 3.1 List of Non Mp/Replay save Wml/Lua functions 4 Additional tricks and tips 5 See Also Why does OOS https://wiki.wesnoth.org/OOS_(Out_of_Sync) happen? Game begins out of sync At the beginning of an mp game the host sends the content of the [multiplayer] or [scenario] to the other clients (via the mp server). All other information, specially [unit]s [terrain]s and toplevel [lua] tags are not transmitted to other players. Instead it is expected that the other players have this data locally available and that their data matches the data of the host. If that is not the case it can cause OOS. This can happen if one of the players has modified their game files, or if the players don't have matching add-on versions. The OOS may still not appear until a mismatched resource actually appears and does something. Game becomes out of sync During the actual game all clients have their own local gamesate. The Clients communicate by sending 'player actions' like 'move unit at (3,4) to (5,5) with the route ((3,4),(3,5),(4,5),(5,5))'. These actions are evaluated on the other clients which should lead to the same local gamesate on all clients (asuming that they had the same local gamestate before that action). If at any time clients don't have the same local gamestate we call that OOS. The clients usually send these actions as soon as they know that they cannot be undone. Those actions that a
Statistics Site Help User Docs: Cookbook User Docs: In Depth Guide Get Support Contact Us Misc About Gna! the Savane Project W3C Validation Thanks To FSF https://gna.org/bugs/?24671 France Bearstech the GNU Project Battle for Wesnoth - Bugs: bug #24671, Lua error with [set_variables] Group Main Main View Members Search Homepage Docs Browse Submit Edit Digest Export Search Mailing Lists Bugs Browse Reset to all open ones Submit Digest Export View Statistics Search Patches Browse Reset to all open ones Submit Digest Export View Statistics Search Show feedback againbug #24671: Lua battle for error with [set_variables] Submitted by: Pentarctagon