Commit Graph

461 Commits (experimental-mono)

Author SHA1 Message Date
David Cernat e8d636ebc3 [Server] Rework Get/SetAttributeCurrent into Get/SetAttributeModifier
As seen here, attributes don't use the concept of current values, but rather of value modifiers and value damage:

https://github.com/OpenMW/openmw/blob/master/apps/openmw/mwmechanics/stat.cpp#L217
7 years ago
David Cernat c9c363ebef [General] Allow GameSettings to set bed & wilderness resting separately 7 years ago
David Cernat 3508a16836 [General] Use GameSettings packet to set ability to rest and wait 7 years ago
David Cernat 6668b9ab42 [General] Implement ConsoleCommand packet 7 years ago
David Cernat be25decee2 [General] Implement PlayerSpeech packet 7 years ago
David Cernat 413893aa51 [General] Implement PlayerAnimPlay packet 7 years ago
David Cernat 50d5fffb7f [General] Add and implement PlayerQuickKeys packet 7 years ago
David Cernat cffd985038 Merge pull request #266 from TES3MP/0.6.0
Add hotfix commits for 0.6.0 up to 18 Aug 2017
7 years ago
David Cernat 0820b7e92b [Server] Add GetCaseInsensitiveFilename() script function
Additionally, make header order consistent in script function files.
7 years ago
David Cernat 0e2038f045 [General] Record and get player positions before their last cell change 8 years ago
Unknown bfbfbeac43 Added networking and saving for custom spells 8 years ago
David Cernat 9d05063af4 [General] Add server script functions for banning & unbanning IPs
Additionally, use a more informative message for the client when trying to connecting to a server that it is banned from.
8 years ago
David Cernat 8b79cdd4f4 [Server] Document script functions, part 3
Also reorder functions in Cells and CharClass so they are consistent with the rest.
8 years ago
David Cernat 5e5440b697 [Server] Document script functions, part 2 8 years ago
David Cernat cc91b32b2f [Server] Make spell script functions consistent with others 8 years ago
David Cernat 8bd33e5fbb [Server] Document script functions, part 1 8 years ago
David Cernat f65f996418 [Server] Add script functions for werewolf states 8 years ago
David Cernat 43a3daf0aa [General] Add & implement PlayerShapeshift packet for werewolf states 8 years ago
David Cernat ad9fa0631a [General] Rename jailText to jailEndText and add jailProgressText in PlayerJail 8 years ago
David Cernat e36c0afc59 [General] Send faction reputation via PlayerFaction packets 8 years ago
David Cernat be93ec8ef6 [General] Implement ObjectState packet 8 years ago
David Cernat 083b46394d [General] Add ignoreJailSkillIncreases to PlayerJail packets 8 years ago
David Cernat 5962570c48 [General] Add jailText to PlayerJail packets 8 years ago
David Cernat 3280f0c5ee [General] Implement PlayerJail packet
Rework server's DeathFunctions into MechanicsFunctions

Remove connection between PlayerResurrect and jailing
8 years ago
David Cernat b1b27728e2 [Server] Move functions dealing with PlayerKillCount to QuestFunctions 8 years ago
Koncord 9cc07f100c [Server] Add OnObjectState callback 8 years ago
David Cernat 6dde0ca9c9 [Server] Rework script functons by removing unnecessary vector buffers
Add new initialization script functions to allow clearing all player changes vectors in a manner consistent with Actor and World functions

Add toOthers boolean to all methods that send packets with player changes vectors
8 years ago
David Cernat 2c05b7f747 [Server] Rename InitiateEvent() into InitializeEvent() for consistency 8 years ago
David Cernat 1d504a665f [General] Add RANK, EXPULSION and BOTH actions to PlayerFaction packets 8 years ago
Koncord 940ae5c2fb [Server] Implement GetIP API function 8 years ago
David Cernat 60574ae667 [General] Implement jail time as a death penalty 8 years ago
David Cernat 71313c5aa6 [General] Implement PlayerMap packet, part 1 8 years ago
David Cernat 1f682749d6 [General] Add optional notes to PasswordDialogs 8 years ago
Koncord d9e98ec771 [Server] Add expected ‘;’ 8 years ago
Koncord d14ad55a49 [Server] Fix compilation on arm 8 years ago
Koncord f92117e73d [Server] change "__arm__" to "__ARM_ARCH" in ARM detection 8 years ago
Koncord 15a197cb9a [Server] Temporarily disable CallFF for ARM 8 years ago
Koncord 653db9e266 [Server] Simplify native CallPublic & CreateTimerEx 8 years ago
Koncord 5292914325 [Server] Simplify native CallPublic & CreateTimerEx 8 years ago
Koncord 1c09e0c255 [Server] Add CallFF dependency 8 years ago
Koncord e68eee651a [Server] Fix Resurrect 8 years ago
Koncord c58c26f6c0 [Server] Implement native CreateTimer & CreateTimerEx 8 years ago
Koncord 9ab58b6708 [Server] Remove redundant SetResurrectType
Rename SendResurrect to Resurrect
8 years ago
David Cernat 813a3c89c4 [General] Implement PlayerBook packet to track skill books read 8 years ago
David Cernat b3b73c5cd2 [General] Implement resurrection at nearest shrine or temple 8 years ago
David Cernat 66a3f3d475 [Server] Use cleaner solution for safely reading cell descriptions 8 years ago
David Cernat 78f29302ef [General] Fix PlayerJournal logic by sending only refIds for its actors
Additionally, make the refIds for actors usable in script functions.
8 years ago
David Cernat 48c63dbce9 [General] Fix ObjectLock packets by making hasCellData true for them 8 years ago
David Cernat 4ad87faac1 [Server] Create new Settings category for script functions 8 years ago
David Cernat ebf7740969 [General] Repurpose GameConsole packet as GameSettings & add difficulty to it 8 years ago
Koncord 3803535bd5 [General] Implement CleanChat() 8 years ago
David Cernat 51b95f35cd [Server] Fix problem with fetching interior cell descriptions 8 years ago
David Cernat db7709ee18 [Server] Modernize getting and setting of player cells 8 years ago
David Cernat 0d3976950b [Server] Use consistent names for rotation script functions 8 years ago
David Cernat 70d9374a6a [General] Implement PlayerKillCount packets 8 years ago
David Cernat 5b23da8e1c [General] Rename unused PlayerRegionChange packet into PlayerKillCount 8 years ago
David Cernat ee5c9b65c5 [General] When changing region, send new region name in PlayerCellChange 8 years ago
David Cernat f02ed0d621 [Server] Add script functions for getting and setting actor dynamic stat modifiers 8 years ago
Koncord 568b0702fa [Server] Implement PasswordDialog 8 years ago
Koncord cef58fa164 [Server] Change fprintf to LOG_MESSAGE_SIMPLE in GET_PLAYER 8 years ago
Koncord 186e5fe33e [Server] Remove GetAngleY & remove Y parameter from SetAngle 8 years ago
David Cernat a353a21280 [General] Fix code style inconsistencies 8 years ago
David Cernat f4cdedd8cb [General] Synchronize summoned creatures 8 years ago
David Cernat 4e5c8873e0 [General] Use ObjectSpawn instead of ObjectPlace for actors 8 years ago
David Cernat 27148ce9eb [General] Add placeholders for 12 new packets, to be implemented soon
Additionally, make it slightly clearer who created which previously existing packets.
8 years ago
David Cernat 940a2b6eb5 [Server] Add script functions for setting and sending ActorEquipment 8 years ago
David Cernat f47a10dd4a [Server] Add script callback and getter functions for ActorEquipment 8 years ago
David Cernat 32879adc5b [General] Allow ObjectTrap to trigger traps, not just disarm them 8 years ago
David Cernat 93aa674eff [Server] Add SendObjectTrap() script function 8 years ago
David Cernat dbdb11b5f0 [Server] Add script functions for dialogue 8 years ago
David Cernat 08de349133 [General] Add placeholders for PlayerTopic & ObjectTrap packets 8 years ago
David Cernat 870fd9a78b [General] Remove ObjectUnlock packet, use ObjectLock with 0 lock instead 8 years ago
David Cernat 0595192129 [Server] Make GetFactionExpelledState() return a bool instead of an int 8 years ago
David Cernat a2e2ca7cab [Server] Add script functions for factions 8 years ago
David Cernat 90c594b726 [Server] Make names for Player script callbacks shorter 8 years ago
David Cernat ad388c7e12 [General] Add placeholders for ActorEquipment & PlayerFaction packets
Also reorder packets and packet processors.
8 years ago
David Cernat f527fe9ebe [General] Add basic integrity check to reading of ActorList packets
Additionally, add newlines to files missing them.
8 years ago
Koncord 31adb5d715 [Server] Allow timers callbacks to restart timers 8 years ago
David Cernat de49f5f175 [General] Add and use isActor bool for WorldObject 8 years ago
David Cernat 9d2c5c3502 [General] Simplify structure of BaseEvent 8 years ago
Koncord a4a77ddeff [Server] Add SetRuleString and SetRuleValue to script API 8 years ago
Koncord 32284787de [Server] Add OnServerPostInit callback 8 years ago
David Cernat 4d81455020 [General] Rework and simplify death reasons so they work with NPCs 8 years ago
David Cernat 06f3c07116 [Server] Only read Actor packets from players who are still authorities 8 years ago
David Cernat e01cadad23 [Server] Send ActorAuthority packets to all players who loaded the cell 8 years ago
Koncord b223d0fa1e [Server] Register new callback 8 years ago
David Cernat 4c35c328a9 [Server] Add SendActorPosition() script function 8 years ago
David Cernat e5e888ac21 [Server] Add script functions for checking what data an Actor has 8 years ago
Koncord 6ddab0d323 [Server] Add and implement "look like creature" functions 8 years ago
David Cernat 62d93a09c1 [Server] Add new script callbacks for cells, remove a couple of others
OnPlayerCellState and OnActorStatsDynamic are now removed as callbacks.

The old OnCellUnload is now renamed into OnCellDeletion.

OnCellLoad and a new OnCellUnload relating to a specific player's load/unload are added.
8 years ago
David Cernat 217894100a [Server] Add ReadCellActorList() script function 8 years ago
David Cernat e8e0090b9b [General] Use new SimpleCreatureStats struct in BaseActor 8 years ago
David Cernat 0e8d115794 [Server] Clean up ActorFunctions by using readActorList pointer
Also rename scriptActorList into writeActorList, and also rename matching methods, for clarity.
8 years ago
David Cernat b54560a362 [Server] Clean up WorldFunctions by using readEvent pointer
Also rename scriptEvent into writeEvent, along with matching methods, for clarity.
8 years ago
David Cernat b62969d3cf [Server] Add OnCellUnload script callback 8 years ago
David Cernat a2f6d99dfd [Server] Use new CreatureStats in ActorFunctions to fix invalid pointer 8 years ago
David Cernat 6ff9091afd [Server] Add script functions for setting actor dynamic stats 8 years ago
David Cernat 9d7142f684 [Server] Clean up order for StatsFunctions 8 years ago
David Cernat 03c56e01f9 [Server] Add script functions for getting actor dynamic stats 8 years ago
David Cernat 3d6b21942c [Server] Add OnActorStatsDynamic script callback 8 years ago
David Cernat 328b4fb763 [Server] Fix invalid pointers when using ActorFunctions::GetActorCell() 8 years ago
David Cernat a71dbc7d09 [Server] Add script functions for setting actor cells and positions 8 years ago
David Cernat 9c5eb47e90 [Server] Add and use Utils::getCellFromDescription() 8 years ago
David Cernat aeab851ed8 [Server] Add script functions for getting actor position coordinates 8 years ago
David Cernat 1ce60fbf30 [Server] Add GetActorCell() script function 8 years ago
David Cernat 9a89284bca [Server] Add OnActorCellChange script callback 8 years ago
David Cernat 6a21ec1fdc [General] Rename PlayerPos into PlayerPosition 8 years ago
David Cernat 7b07d6651f [General] Add and use PlayerBounty packet and matching script functions 8 years ago
David Cernat 870886192b [General] Rename DYNAMICSTATS into STATS_DYNAMIC 8 years ago
David Cernat b6c3830ea0 [General] Rename WorldObject's pos into position for consistency 8 years ago
David Cernat 174f316787 [General] Rename PacketActorFrame into PacketActorTest 8 years ago
David Cernat 69bf2749a5 [Server] Add ActorFunctions for getting and setting basic actor data 8 years ago
David Cernat e9c3abc2c3 [Server] Reset variables more elegantly in WorldFunctions 8 years ago
David Cernat c52084a028 [General] Use BaseActorLists in ActorPackets 8 years ago
David Cernat 1b714fbfa7 [Server] Make script functions more consistent 8 years ago
David Cernat a24ef3a25e [Server] Create ActorFunctions placeholder 8 years ago
David Cernat 070c6a3bd4 [General] Add ActorPacketController & make controller var names clearer 8 years ago
David Cernat ba8341bfb5 [Server] Add SendActorAuthority() script function 8 years ago
David Cernat c65e94587c [Server] Add SendActorList() script function 8 years ago
David Cernat 8c2469bf6d [General] Add placeholder ActorList, ActorAuthority & ActorFrame packets 8 years ago
David Cernat 068835ba71 [Server] Add OnMpNumIncrement() script callback 8 years ago
David Cernat 3b34b9cd3e [Server] Fix typo in MiscellaneousFunctions 8 years ago
David Cernat 2716078a30 [Server] Add GetCurrentMpNum() and SetCurrentMpNum() script functions 8 years ago
David Cernat 82f38dcfad [Server] Set mpNum in AddWorldObject() 8 years ago
David Cernat 665fe09fd0 [Server] Add GetObjectMpNum() and SetObjectMpNum() script functions 8 years ago
David Cernat 174937f412 [Server] Add LogMessage() and LogAppend() script functions 8 years ago
Koncord 690211ad99 [General] Extract BaseEvent & BasePlayer from packets to functions
Move Send and Read functions to BasePacket
8 years ago
David Cernat 82dcec5ec5 [Server] Use consistent pattern for script function category names 8 years ago
Koncord c353e18645 [General] Move Utils from server to components
Rewrite CRC32 functions to the Boost equivalent
8 years ago
David Cernat 5c269a5f8d [General] Rename ID_GAME_DIE and ID_GAME_RESURRECT 8 years ago
Koncord 0442ebd607 [Server] Remove redundant newlines & keep ~120 columns 8 years ago
David Cernat 684517e02f [Server] Fix Miscellaneous category of script functions 8 years ago
David Cernat 0baada0aa2 [Server] Add GetLastPlayerId() script function in Miscellaneous category 8 years ago
Koncord b158e89f77 [Server] Change signatures of GetLastEventAction & SetScriptEventAction 8 years ago
Koncord cbe31149e3 [Server] Remove redundant constructor 8 years ago
David Cernat af35ee38d1 [Server] Rename ClearScriptEvent into InitScriptEvent with pid argument 8 years ago
David Cernat 7065569f9b [Server] Reuse 2 BaseEvents over and over instead of creating new ones 8 years ago
Koncord 158e9b3b09 [Server] Add ability to set password to server from config & scripts 8 years ago
David Cernat a4526605a6 [General] Remove goldValue from ContainerItem because it is never useful 8 years ago
David Cernat b1009ad33d [Server] Add GetContainerItemActionCount() for getting drag count 8 years ago
David Cernat 4f2b88df8a [General] Remove owner var from ContainerItem because it is always empty 8 years ago
Koncord 1fb2176cfa [Server] Add forgotten type for callbacks 8 years ago
David Cernat c01ab63239 [Server] Add script functions for setting container item info 8 years ago
David Cernat aa1549606f [Server] Add script functions for getting container item info 8 years ago
David Cernat 70470e12b4 [Server] Reorder World script functions 8 years ago
David Cernat 8a5bc77699 [Server] Add GetBaseEventAction script function 8 years ago
David Cernat 1198caddf6 [Server] Add OnContainer script callback 8 years ago
David Cernat eba7d8408f [Server] Use script function to get spellbook action 8 years ago
David Cernat 3b604a432e [General] Restructure ID_CONTAINER to allow multiple containers at once 8 years ago
David Cernat c8cbfbef62 [General] Sketch out server requests to players for container data 8 years ago
David Cernat b651c4deb4 [Server] In Item script functions, rename itemId into refId for clarity 8 years ago
David Cernat 5038353792 [General] Rename BaseEvent's state into doorState & adjust related funcs 8 years ago
David Cernat 182b238b5f [General] Rename WorldEvent into BaseEvent 8 years ago
David Cernat f314b13edf [General] Rename item health into charge, for consistency with OpenMW 8 years ago
David Cernat ecc456fea9 [General] Include charge int in WorldObject & send it w/ ID_OBJECT_PLACE 8 years ago
David Cernat 04d45b9dbb [General] Rename packets to show they are for players only, not NPCs 8 years ago
David Cernat 6328ffb9aa [General] In ID_GAME_ATTRIBUTE & ID_GAME_SKILL, rename GAME into PLAYER 8 years ago
David Cernat c1427b2558 [General] Simultaneously send loads & unloads in ID_PLAYER_CELL_STATE 8 years ago
David Cernat 7ebad596d6 [Server] Use double instead of int for scale in WorldFunctions 8 years ago
David Cernat 018b0e6699 [Server] Add script functions & callbacks for locking, unlocking & doors 8 years ago
David Cernat 8e438a1b82 [Server] Add OnObjectScale callback, part 2 8 years ago
David Cernat 5bd2fdcf66 [Server] Add OnObjectScale callback, and set scale for WorldObject 8 years ago
Koncord 0b8d0224d1 [Server] Change type in second argument in SetConsoleAllow to "bool" 8 years ago
Koncord 75afa58981 [Server] Add bool type for scripts 8 years ago
David Cernat 87dce73b90 [Server] Add script function for sending world object scale 8 years ago
David Cernat 705589e3e3 [Server] Add script functions for getting/setting world object scale 8 years ago
David Cernat 1fc9dd4f93 [Server] Remove WorldFunctions index parameters that are no longer used 8 years ago
David Cernat 9f998c9901 [Server] Improve getter methods in WorldFunctions 8 years ago
David Cernat 88e648aaa9 [Server] Fix crash caused by setting too many WorldObject refIds, try 2 8 years ago
David Cernat fe9e30a4d8 [Server] Fix crash caused by setting too many WorldObject refIds 8 years ago
David Cernat 5eff2ece21 [Server] Fix memory leaks related to WorldEvents as suggested by Koncord 8 years ago
David Cernat 6b9fba7885 [Server] Add script functions for getting/setting world object rotation 8 years ago
David Cernat 920c1113a3 [Server] Add script functions for setting world object placement info 8 years ago
David Cernat 2c5cc82f49 [Server] Add script functions for getting world object placement info 8 years ago
David Cernat 27ac314cb1 [Server] Add script functions for getting world object refIds & refNums 8 years ago
David Cernat b549da996e [Server] On second thought, keep cell description as argument to them 8 years ago
David Cernat 5989bbd97e [Server] Remove arguments from OnObjectPlace & OnObjectDelete callbacks 8 years ago
David Cernat f11df211fa [Server] Add script functions for dealing w/ WorldEvents & WorldObjects 8 years ago
Koncord b658adf7b0 [Server] Killed another tab character 8 years ago
David Cernat 9c3a37a790 [Server] Make GetCellStateDescription's cstrDescription null-terminated 8 years ago
Koncord 1c810ecad5 [Server] Fix memory leak in GetCellStateDescription() 8 years ago
David Cernat 0ccfe66212 [Server] Send stable C string in GetCellStateDescription() 8 years ago
David Cernat 6331c55bc7 [Server] Add colons missing from CELLAPI 8 years ago
David Cernat 2f644e9b14 [Server] Add script functions for getting info about cell state changes 8 years ago
David Cernat 70823d011d [Server] Define CELLAPI 8 years ago
David Cernat 0cc20d26ce [Server] Move script functions for cells to a new CellFunctions class 8 years ago
David Cernat 62f359e250 [Server] Rename Translocations into Positions 8 years ago
David Cernat 96bd21a7ca [Server] Rename OnPlayerCellLoad to OnPlayerCellState, add action param 8 years ago
David Cernat 158d606477 [General] Leave one blank line at the end of every tes3mp code file 8 years ago
David Cernat 73d39c1a0a [General] Stop using virtual functions in BasePlayer, part 2 8 years ago
David Cernat 63c8a98083 [General] Stop using virtual functions in BasePlayer 8 years ago
David Cernat c62a575a9e [Server] Change order of words in the names of script callbacks 8 years ago
David Cernat 1d9c6ddd81 [General] Add placeholders for the new packet ID_PLAYER_CELL_LOAD 8 years ago
David Cernat f9feaf05f0 [Server] Add script callbacks for object placement and deletion 8 years ago
David Cernat 35e453dec3 [General] Sketch out most of functionality for journal saving/loading 8 years ago
David Cernat d308897f95 Rename PacketItems, PacketSpells into InventoryChanges, SpellbookChanges 8 years ago
David Cernat e2c595fc5d Add preliminary structure for journal changes 8 years ago
David Cernat a69f294ef0 Rename ID_GAME_CELL into ID_PLAYER_CELL_CHANGE 8 years ago
David Cernat 83277a1512 Send spellbook in LocalPlayer CharGen & change UPDATE action name to SET 8 years ago
David Cernat e7675d94d4 Make server script functions for spells consistent with those from items 8 years ago