![[Image: y5j8gwx.png]](http://i.imgur.com/y5j8gwx.png)
Today, you can finally see totally new multiplayer platform.
This isn't just an update, is whole new version. That's why it took some time.
This platform isn't finished yet, thats why I need your help with tests.
Remember this is just TEST version, not stable release, its developer version for scripters, they can prepare servers for new release.
Thanks to autoupdate, once downloaded G2O will be updated automaticly.
Please report bugs and crashes on Bug Tracker
List of available functions what new version offer is in server folder in file called "Functions.txt".
Current version: 0.0.5.1
Pre-release: 0.0.6
https://www.sendspace.com/file/wd8kr8
Launcher: https://bitbucket.org/Bimbol/g2o-launcher/overview
Microsoft Visual C++ 2015 Redistributable Package (x86): https://www.microsoft.com/pl-pl/download...x?id=48145
Master server: 185.5.97.181:7777
Server API
- Server info: http://185.5.97.181:8000/master/server/ip:port/
- Public servers: http://185.5.97.181:8000/master/public_servers
Requirements:
- Gothic 2 fix - 2.6.0.0 rev 2 (http://www.worldofgothic.de/dl/download_278.htm)
Download latest:
Client: https://www.sendspace.com/file/i7sf8j (0.0.5)
Server (Win x86): https://www.sendspace.com/file/19fm2x
Server (Linux 32): https://www.sendspace.com/file/iy4uup
Module example: https://bitbucket.org/Bimbol/sqmysql/src
Download
NOTE: Client files have to be extracted to Gothic II folder
Changes 0.0.0-0.0.1
- Removed body state, from server side
- Reconstructed structure for sending basic data
- Added crash reporter
- Fixed bug with crossbow skillweapon
- Fixed bug with wrong ordering script data
- Fixes synchronization many bugs
- Fixed server crashes while closing
- Fixed many client crashes
- New script functions
Changes 0.0.1-0.0.2
- Fixed bug with respawn
- Fixed bug with import node in config file
- Fixed bug in client events, sometimes didn't respond
- Fixed bug in autopatcher, subfolders weren't loaded
- Fixed bug with invisible textures
- Fixed bug with wrong statistics after respawn
- Fixed bug with synchronization of equipped items, if player changed item without unequipping, them item wasn't synchronized
- Update Squirrel from 3.0.7 to 3.1
- Added value heroId, that contain local player id
- Constants values was updated on the wiki page
- Removed client function: getHeroId
- Added server function: setPlayerRespawnTime
- Added server function: getPlayerRespawnTime
- Added client function: isInventoryOpen
- Added client function: hasItem
- Added client function: getItemBySlot
- Added client function: getEq
- Added client function: setCursorVisible
- Added client function: isCursorVisible
- Added client function: setCursorSensitivity
- Added client function: getCursorSensitivity
- Added client function: setCursorTxt
- Added client function: getCursorTxt
- Added client function: setCursorPosition
- Added client function: setCursorPositionPx
- Added client function: getCursorPosition
- Added client function: getCursorPositionPx
- Added client function: isMouseBtnPressed
- Added client function: setKeyLayout
- Added client function: getKeyLayout
- Added client event: onMouseClick
- Added client event: onMouseRelease
- Added client event: onMouseWheel
- Added client event: onRespawn
- Added client event: onFocus
Changes 0.0.2-0.0.2.1
- Fixed bug with missing heroId value
Changes 0.0.2.1-0.0.3
- Mouse events working even in mouse isn't visible
- New patcher system
- Packets
- Modules (NOTE! Old modules isn't working, they have to be recompiles with new headers!)
- Fixed bug with not working timers on client side
- Fixed bug with, wrong font in view after change font in draw
- Items in inventory are now stacked into one
Changes 0.0.3-0.0.3.1
- Fixed bug with not working keys after change resoultion
- Fixed bug with not working disableKey
- Fixed bug with not working functions in system lib
- Added callback onTakeItem, onDropItem, onUseItem, onChangeResolution
- Added client function clearInventory (will be on server too, but later)
Changes 0.0.3.1-0.0.3.2
- Fixed bug with wrong calculated draw width (spaces have wrong size)
- Fixed bug with not working onRender and onRenderNickname
- Fixed bug with not visible cursor
Changes 0.0.3.2-0.0.3.3
- Fixed bug with render and blending
Changes 0.0.3.3-0.0.3.4
- Fixed bug with infinity turn ani.
- Fixed bug with wrong interpolation, now work much better.
- Fixed some sync issues with combine ani, and swimming/diving.
- Fixed crashes while exiting game.
Changes 0.0.3.4-0.0.4.0
- Fixed bug with rendering nickname colors.
- Fixed bug with removing players, while time was changed.
- Fixed bug with triggering onKey, with mouse buttons etc.
- Fixed bug with getPlayerAngle, on client side. Instead of float returning bool.
- From now on, server scripts are called in correct order.
- Added error info while load module fails.
- Added checking client world with server world, while joining to server.
- Added time synchronization.
- Added world synchronization.
- Added nicknames, colors, ping synchronization.
- Fixed bug with not dying, until a-d animations was enabled.
- Fixed some crashes, while lost connection.
- Fixed bug with getLetter, instead of char returning int.
- Fixed bug with multiple packet events. Once readed packet was broken.
- Added server function: kick(pid, reason).
- Added server function: ban(pid, minutes, reason).
- Added server function: getPlayerPing.
- Added server function: equipItem.
- Added server function: unequipItem.
- Added server function: setPlayerWorld.
- Added server function: getPlayerWorld.
- Added client function: getPlayerPing.
- Added client function: changeWorld.
- Added client function: disableControls.
- Added client function: isControlsDisabled.
- Added client function: playGesticulation.
- Added client function: setLevel.
- Added client function: getLevel.
- Added client function: setExp.
- Added client function: setNextLevelExp.
- Added client function: getNextLevelExp.
- Added client function: setLearnPoints.
- Added client function: getLearnPoints.
- Added client function: textSetFont.
- Added client function: textWidth.
- Added client function: textWidthPx.
- Added client function: letterWidth.
- Added client function: letterWidthPx.
- Added client function: letterDistance.
- Added client function: letterDistancePx.
- Added client event: onPlayerChangeNickname.
- Added client event: onPlayerChangeColor.
- Added client event: onPlayerChangePing.
- Added client event: onWorldChange.
- Added client event: onWorldEnter.
- Added server event: onPlayerEnterWorld.
- Added server event: onPlayerChangeWorld.
Changes 0.0.4.0-0.0.4.1 (Also server update!)
- Fixed bug with visual, fatness, scale. Changes was visible only for streamed players, but not for player who send the change.
- Fixed bug with not working playGesticulation.
- Fixed bug with not working onPlayerChangePing.
- Fixed bug with not visible items after dead.
- Fixed bug with desynchronization of death.
- Fixed crashes while exiting game (finnaly!).
- Fixed crashes caused by returning wrong state in isPlayerConnected.
- Added auto conversion form float to int, and from int to float in draws, textures and cursor functions.
- Added server function: getPlayerAniId.
- Added client function: getTickCount.
- Added client function: showPlayerStatus.
- Added client function: getWorld.
- Added client function: getPlayerDexterity.
- Added client function: getPlayerStrength.
- Added client function: getPlayerScale.
- Added client function: getPlayerInstance.
Changes 0.0.4.1-0.0.5
- Generating ids for Items and Mds (Boost for network)
- Synchronized overlays
- Fixed bug with getKeyLetter, for some keys was returned random string instead of null
- Fixed crashes with downloader buffer
- Extended Packet class
- Fixed bug with looped animations
- Fixed bug with getTickCount, which returned storage value instead of current real ms
- Quit was removed from multiplayer console
- Added possibilty to control build version of client in config
- Added client function: enable_NicknameId(toggle)
- Added client function: setPlayerOnFloor(pid)
- Added client function: stopAni(pid)
- Added client callback: onAnim(aniId)
- Added server function: applyPlayerOverlay(pid, overlay)
- Added server function: removePlayerOverlay(pid, overlay)
- Added Vob class
- Added Mob class
- Added MobInter class
- Added MobLockable class
- Added missing math fuctions
- Added missing hash functions
Changes 0.0.5.0-0.0.5.1
- Fixed bug with not working packets
- For now packets throws exception if read failure
Changes 0.0.5.1-0.0.6.0
- Fixed bug with stack overvflow in packets (thx Zmorra)
- Fixed some bugs with players overlays
- Fixed bug with equipaArmor, unequipArmor etc. they removed items from inventory
- Fixed bug with not working streamer
- Added shared class queue
- Added client class Draw3d
- Added client function enable_DamageAnims
- Added client function getNetworkStats
- Added client callback onTakeFocus
- Added client callback onLostFocus
- Added server class ItemsGround, for synchronizing items on the ground
- Added server class ItemGround
- Added server callback onExit
- Added server callback onPlayerDropItem
- Added server callback onPlayerTakeItem
- Added client function: getMaxSlots
- Added client function: getHostname
- Ported Textures, Draws to OOP sytnax
- Fixed crashes while exiting game, this time for good
- Fixed bugs with item and mds ids (sometimes was different on server and client side)
- Fixed bug with not stoping anims after dead
- Fixed bug with wrong realibity id
- Fixed bug with "freezed" server
- Fixed bug with colors. Colors was only given to players in stream.
- Fixed bug with nickname. Nickname was only given to players in stream.
How to debug client side code?
1. In game click ~ to open console
2. Write command "view error"
3. Use arrow key to navigate (up/down)
4. If you want to go back to old view, type "view info"
Do you found any bug? Please report at Bug Tracker
Have fun!