Skip to content

Instantly share code, notes, and snippets.

@dpogue
Last active August 22, 2022 07:40
Show Gist options
  • Save dpogue/2c0253e6e6115af8da256e757be3ab5c to your computer and use it in GitHub Desktop.
Save dpogue/2c0253e6e6115af8da256e757be3ab5c to your computer and use it in GitHub Desktop.

H-uru/Plasma Changelog

2022

Not yet complete

2021

  • Allow selecting KI folders using text commands 1
  • Add options for runtime rendering pipeline selection 1
  • Remove and simplify calendar code 1
  • Fix chat fade starting while typing 1
  • Change chat highlight to only highlight the player name 1
  • Fix /invite command crashing 1
  • Prevent sending blank KI chat messages 1
  • Fix cursor visibility issue 1
  • Update system info collection 1
  • Improve text resolution of Marie's note in the Baron City Office 1
  • Fixes for reward clothing handling 1
  • Fix crash when sharing Relto book 1
  • Fix Vault node memory leaks 1 2
  • Fix clicked cursor state in journals 1
  • Improve SDL console commands 1
  • Update podium audio handling in Neighborhoods 1
  • Update Guild of Messengers Pub menorah SDL states 1
  • Add --SkipIntroMovies client option 1
  • Fix custom avatar footstep sounds 1
  • Add localization helper script for korman Ages 1
  • Fix visibility check on avatars 1
  • Improve performance by suppressing Python Vault node callbacks during loading 1
  • Show Relto page symbols on both sides of the page 1
  • Move pipeline implementations to FeatureLib folder 1
  • Add Veelay Tsahvahn sky Relto page 1 2
  • Use CDATA and UTF8 for all localization files 1 2
  • Remove error-obscuring name-based object lookup in internal clients 1
  • Fix improper warp when exiting the Gahreesen gear 1
  • Fix the /clearchat command 1
  • Fix for Er'cana harvester car & ramp logic 1
  • Fix for Kadish moon elevator subworld 1 2
  • Fix clothing UV maps not being updated by morphs 1 2
  • Improve performance by optimizing data passing in code 1
  • Add support for buoying physical objects on wavesets 1
  • Fix list rendering in avatar customization GUI 1 2
  • Add additional fan clothing 1
  • Add Tiam Age 1 2 3
  • Fix the 3DS Max PlasmaMax plugin up to 3DS Max 2021 1 2 3 4 5 6 7 8
  • Enable optional Qt 6 support for GUI tools 1
  • Fix default key bindings that conflict with chat 1 2
  • Fix /p to not be case-sensitive 1
  • Add Volthol Gallery Age 1
  • Fix compile-time plFactory validation 1
  • Add clickable link support in KI chat 1 2
  • Improve Python resiliancy against scripting errors 1
  • Improve KI chat history browsing 1
  • Allow case-insensitive matching of player names in KI chat 1
  • Add support for clang helper tools 1 2 3 4
  • Improve Python enums 1
  • Fix some resource leaks 1 2 3
  • Improve build time with precompiled headers and unified sources 1 2
  • Continue to improve string handling 1 2
  • Add Serene Age 1 2
  • Standardize on nullptr across codebase 1
  • Fix crash in Minkata 1
  • Fix file dialogs in the Qt tools on Windows 1
  • Include commit SHA in product info string 1
  • Add Tre'bivdil Age 1
  • Enable link-time code optimizations 1
  • Improve GitHub documentation 1 2 3
  • Add 64-bit support 1 2 3 4 5 6
  • Fix cursor resolution and shadow issues 1 2 3 4 5
  • Fix Shroomie gate state consistency 1
  • Continue to improve cross-platform support 1 2 3 4 5 6 7 8 9 10 11 12 13
  • Improve performance of pfLocalizationMgr 1 2
  • Replace hsTArray with C++ standard vector 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
  • Fix memory leak of string in Python code 1
  • Fix some PhysX issues 1 2 3 4 5 6
  • Fix screenshots of in-game documents 1
  • Decompress audio files on download 1
  • CMake & vcpkg build system improvements 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
  • Continue to improve code quality 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
  • Add content from MOULa December 2020 update 1

2020

  • Consolidate floating-point constants 1
  • Improve CMake build system & automated builds 1 2 3 4
  • Fix some Python initialization memory leaks 1
  • Improve hsRef system to fix more memory leaks 1 2
  • Update to use Visual Studio's built-in DirectX 9 SDK 1
  • Fix non-synchronized link out animation 1
  • Fix for the Er'cana harvester position 1
  • Load keybindings on startup not in Relto 1
  • Add Python script for button combination puzzles 1
  • Fix 'hoods disappearing from Nexus 1
  • Fix Unicode-related logging crash 1
  • Fix Vault Text node imager crash 1
  • Fix infinite loop with invalid textures 1
  • vcpkg & 3rd party library updates 1 2 3
  • Improve GitHub experience & documentation a bit 1 2 3
  • Add fan content from 2020 MOULa update 1
  • Add a SoundDecompress tool 1
  • Update to PhysX 4.1 1 2 3
  • Fix hsMatrix44 quat decomposition 1
  • Improve debug logging of invalid creatable types 1
  • Add some additional KI easter eggs 1 2
  • Add dice-rolling KI commands 1 2
  • Continue improving cross-platform support 1 2 3 4 5 6 7 8 9 10 11
  • Work towards targeting 64-bit support 1
  • Fix Vault client memory leaks 1
  • Fix visual seams in Ahnonay Cathedral 1
  • Modernize the OpenAL audio system 1
  • Add /r as a short form of /reply 1
  • Update resource generator script for Python 3 1 2 3
  • Fix Bahro pole particle system timer issues 1
  • Move the Python scripts into the Plasma repository 1 2
  • Migrate to Python 3.x 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
  • Fix Er'cana pool draining when players are in the tunnels 1
  • Target Visual Studio 2017 1
  • Fix Python Vault node rich comparisons 1 2
  • Continue to improve Unicode support 1
  • Fix Relto book animation after linking to Relto 1
  • KI chat scrollign improvements 1
  • Completely disable the old visitor account system 1
  • Fix Vault callback bug causing imagers not to update 1
  • Remove hardcoded frame count from loading spinner 1
  • Fix display of some debugging stats 1
  • Restore PRP sequence conflict verification 1
  • Fix whitespace added to Age descriptions 1 2
  • Continue improving codebase & build systems 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
  • Target Visual Studio 2015 and update 3rd party dependencies 1 2 3 4

2019

  • Follow redirects when fetching server status 1
  • Cleanup the Python subsystem 1 2
  • Improve robustness of aspect ratio handling 1
  • Add Opus for higher quality voice chat 1
  • Add automated build system 1 2 3 4 5
  • Fix some plPythonPack bugs 1 2
  • Remove references to visitor accounts 1 2
  • Continue improving codebase & build system 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

2018

  • Add support for server capability detection 1
  • Improve cubemap generation from the console 1
  • Add support for building with OpenSSL 1.1 1 2
  • Fix time display on the Neighborhood clock 1
  • Continue migrating to C++ standard threads 1
  • Extract general rendering pipeline code to pl3DPipeline 1 2 3
  • Fixes for the patcher 1
  • Fix the Windows 10 cursor bug 1 2
  • Support saving text metadata in PNG images 1 2 3
  • Add libsecret password storage for Linux 1
  • Continue improving codebase & build system 1 2 3 4 5 6 7 8
  • Add plPXSubworld class 1

2017

  • Fix crash when no audio track is present in a video 1
  • Continue improving Unicode support 1
  • Fix to only load global PRP files that are listed in the Age file 1
  • Fix editing GZ marker names 1
  • Fix 0-byte patch files 1
  • Fix for Age invites 1
  • Fixes falling through subworlds 1 2
  • Remove JPEG screenshot fallback code 1
  • Implement reward system for GZ marker games 1 2
  • Continue improving codebase & build system 1 2 3 4 5 6 7 8
  • Add generic physical collider data format 1

2016

  • Update build instructions 1
  • Replace plString with string_theory library 1 2
  • Port hsThread to C++ standard threads 1
  • Make plClient initialization faster 1
  • Make fullscreen mode a full-screen window 1
  • Continue to improve cross-platform support 1
  • Continue to improve code correctness & quality 1 2 3 4

2015

  • Flash the KI in the blackbar when a marker is nearby 1
  • Fix lag on receiving KI chat 1 2
  • Fix some sounds being extremely loud 1
  • Remove the GameMgr sub-system 1 2 3 4 5
  • Move GZ marker storage into the Vault 1
  • Fix crash on exit from GZ markers 1
  • Fix for weird camera angles 1
  • Fix sound debugging helpers 1
  • Fix jittering animations 1 2
  • Implement new leaderboard system 1 2
  • Fix race condition with updating state of avatar physics 1
  • Remove /shout and make auto-shout the default 1
  • Add fan-clothing content from MOULa 1
  • Allow internal clients to start in any Age 1
  • Fix crash when adding clothing item that doesn't exist 1
  • Continue to improve code correctness and quality 1 2 3 4 5 6 7 8 9 10 11 12
  • Fix for SDL blob data corruption 1
  • Continue to improve string handling & Unicode support 1 2 3 4 5 6 7 8 9 10
  • Continue to improve cross-platform support 1 2 3 4 5 6 7 8 9 10 11 12

2014

  • Allow specifying server port in server.ini 1
  • Bump 'hoods to top of Nexus list when they are linked to 1 2
  • Add support for WebM video files 1 2
  • Split animation module from the avatar module 1
  • Use system password manager for storing login credentials 1
  • Improve skinning performance with AVX2 support 1
  • Use C++ standard threading & synchronization primitives 1 2
  • Fix display of private messages from admins 1
  • Add chat command history 1
  • Fix owner information of imager text notes 1
  • Fix KI chat fading out while typing 1
  • Fix intermittent crash on avatar creation 1
  • Fix duplicate Vault node callbacks 1
  • Modernize and fix the ref-counting system 1 2 3
  • Fix for Age.SetSDL console commands 1
  • Fix some issues with kickable objects 1
  • Use C++ standard clock for timing 1
  • Add KI /party command 1
  • Enable arrow keys to scroll KI chat history 1 2
  • Improve crash handling and error catching 1
  • Port the GUI tools to Qt5 1
  • Remove all Bink-related video code 1
  • Add prepare_env script to bootstrap dev environment 1 2
  • Continued fixes for cross-platform support 1 2 3 4 5 6 7 8 9
  • Improve KI text rendering against lighter backgrounds 1 2 3
  • Improve compile time 1
  • Fix memory leaks and code quality issues 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
  • Fix for the Ayoheek imager 1
  • Add animation looping helpers for Python 1 2
  • Fix plUruLauncher not installing redist dependencies 1
  • Allow setting more encryption keys in server.ini 1
  • Add unit testing framework 1
  • Continued string handling improvements & Unicode support 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
  • Fix for non-sequential object IDs 1
  • Continued fixes to the 3DS Max PlasmaMax plugin 1 2 3 4 5 6

2013

  • Add highlighting for name mentions in KI chat 1
  • Improve Age linking performance 1
  • Improve memory management around keys 1
  • Remove hardcoded frame number in loading animation 1
  • Fixes for KI chat handling of private admin messages 1
  • Fix crash in plDynamicCamMap 1
  • Refactor the screenshot console command 1
  • Improve startup time by simplifying graphics init 1
  • Add PNG support to plMipmap 1
  • Fix game stutter when adding to KI buddy list 1
  • Split DirectX pipeline into a subfolder of plPipeline 1
  • Fix for Ahnonay sphere spinning 1 2
  • Improvements and fixes for CMake build system 1 2 3 4 5
  • Fix compiling with Visual Studio 2013 1
  • Update README 1 2
  • Improve performance of avatar skinning 1 2
  • Progress Manager rendering improvements 1 2
  • Fix plPythonPack for modules 1
  • Refactor AgeSDLShowHide and AgeSDLBoolRespond scripts 1 2
  • Fix broken /savecolumns KI command 1
  • Reimplement /system global chat command 1 2
  • Add plShaderAssembler tool 1
  • Fix crash in plFileSecure tool 1
  • Copy resource.dat to client output folder 1
  • Fix for Age display names 1 2
  • Improve Python xCheat exception handling 1
  • Add API for saving/loading avatar clothing from file 1 2
  • Improved widescreen support 1 2 3 4 5
  • Add some API helpers for NPCs 1 2 3
  • Fix race condition loading avatar clones 1
  • Continued improvements to PhysX physics handling 1 2 3 4
  • Fix a journal book crash 1
  • Fix Zandi welcoming himself to the Cleft 1
  • Some additional powers for Internal clients 1
  • Various KI fixes 1
  • Fix Python traceback from Quab script 1
  • Correct the voice chat icon resizing 1
  • Improve visual quality of dynamic camera map reflective surfaces 1
  • Fix crash sending KI PMs to player in other Ages 1
  • Improve visual quality of dynamic text maps 1
  • Fix and rewrite the patcher system 1 2 3 4 5
  • Continued improvements for localization 1 2
  • Fix Python tracebacks from Kadish GlowInTheDark script 1
  • Fix crash in Vault client API 1
  • Add ability to silence linking effects when linking a player programmatically 1
  • Fixes for the 3Ds Max PlasmaMax plugin 1 2
  • Fixes for libpcre regex support 1 2 3
  • Enable building the plPageOptimizer tool 1
  • Fix crash and improve physics controller debug display 1 2
  • Clean up null/nil/nullptr handling 1
  • Refactor pending SDL state notifications 1
  • Improve file and filesystem utilities 1 2 3 4 5 6
  • Make line endings consistent 1
  • Refactor RegistryKeyList 1
  • Fix a crash in plStatusLog 1
  • Set product info via CMake definitions 1
  • Remove redundant code modules 1
  • Support Doxygen code documentation generator 1
  • Use updated Windows themes for GUI apps 1
  • Fix crash on exit with leaked keys 1
  • Consolidate code modules and simplify 1 2 3 4 5
  • Memory leak fixes 1 2
  • Remove the NEWZERO macro for consistent malloc handling 1
  • Continued fixes for improved string handling & Unicode support 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
  • Continued fixes for cross-platform support 1 2 3 4 5 6 7 8 9 10 11
  • More header cleanups and compile time improvements 1 2

2012

  • Remove resizing border from game window 1
  • Fix crash in PtGetCameraNumber() 1
  • Fixes after removal of Bink video support 1
  • Fixes for Neighborhood SDL randomization 1 2 3
  • Allow Python to detect in SDL variable are used 1
  • Sweeping rewrite of the xKI Python code 1 2 3 4 5
  • Fix Python SystemErrors 1
  • Fix several compiler warnings 1
  • Fixes to KI chat scrolling 1 2
  • Further fixes to mouse capture in the client window 1
  • Security fix for remote code execution through console commands 1
  • Clean up CoreLib headers 1
  • Fix crash on systems with no Direct3D device 1
  • Avoid truncated window size after going from full-screen to same-sized windowed 1
  • Improve compile time with precompiled headers 1
  • Allow running multiple internal clients at the same time 1
  • Fix message boxes being hidden behind fullscreen window 1
  • Improve NPC tracking and fix crashes with Quabs 1 2
  • Fix console documentation generation 1
  • Fix direction-dependent avatar landing behaviours 1
  • Fix crashes from pfLocalizationDataMgr 1
  • Enable SSE3 matrix optimizations for better rendering performance 1 2 3
  • Allow notify messages to store integers 1 2
  • Improve ResManager page lookup performance 1
  • Improve localization handling 1 2
  • Add language selection to login form 1 2
  • Remove hardcoded list of display resolutions 1 2 3
  • Fix random seeding for randomized SDL variables 1
  • Fix Relto bookshelf for players with large KI numbers 1
  • Improve crash reporting with minidumps 1 2 3
  • Rewrite GameScore 1 2
  • Client window flashing on new KI messages 1 2
  • Allow clickables to function while sitting or AFK 1
  • Fix DST handling and try to patch system clock exploits 1 2 3
  • Tab-completion for names in KI chat 1 2
  • Add basic clipboard functionality 1 2
  • Improve connection reliability with the GameSrv 1
  • Fix some camera stack issues 1
  • Delete several unused modules 1 2 3 4 5 6
  • Fix a file descriptor leak 1
  • Re-fix login hashing algorithms for MOULa 1 2
  • Support PNG images in Vault blobs and Python loading 1
  • Remove the framerate restriction 1
  • Fix StartUp dialog with no player selected 1
  • Fix some visual glitches with the Nexus GUI 1 2
  • Set default full-screen resolution to match current desktop resolution 1
  • Various console fixes 1 2 3 4
  • Improve Unicode support across the engine 1 2 3 4 5 6 7 8 9 10 11 12
  • Fix Relto books not remembering the last open page 1
  • Modernize integer standard types and malloc usage 1
  • Fix key binding with Enter/Return key 1
  • Rewrite subworld handling for Gahreesen gear 1
  • Fix Python script encoding for non-English languages 1
  • Include plLocalizationEditor 1
  • Fix some PhysX issues 1 2 3 4 5 6 7 8
  • Refactor patching to improve performance 1 2 3 4 5
  • Fix for 1 frame of untextured avatar when switch 1st/3rd person cameras 1
  • Refactor pfSecurePreloader to improve local file support 1
  • Show error message if resource.dat is missing 1
  • More fixes to enable cross-platform building of parts of the codebase 1 2 3 4 5 6 7 8 9 10 11
  • Enable compiling the plFontConverter tool 1
  • Increase allowable sequence prefix range 1

2011

  • Fix for exiting subworlds 1
  • ResManager file I/O performance improvements 1
  • Support for PlasmaMax on 3DS Max 2012 1
  • Start fixing 32-bit assumptions for eventual 64-bit support 1
  • Open-source relicensing (GPLv3 + exceptions) 1 2 3
  • Fix for inconsistent keyboard input states 1
  • Fix for incorrect handling of Child Age links 1
  • Fix for the resolution list in the Options menu 1
  • Support local PNG files in Journals 1
  • Fix building several other tool projects 1
  • Remove potentially unlicensed Microsoft code 1
  • More general code cleanups, build system cleanups, and config simplication 1 2 3 4 5 6 7 8 9 10
  • Fix the initial window size in windowed mode 1
  • Re-enable changing the game language 1
  • Allow the mouse cursor to leave the window 1
  • Replace cursor bitmaps with dynamically generated PNGs from SVG sources at build-time 1 2 3 4 5
  • Add plClientResMgr and resource.dat to move cursors out of EXE resources 1 2
  • Add PNG image support 1 2
  • Support for 64-bit time_t structure 1
  • Pixel-align cursors (and other plates) when drawing to the screen 1
  • Support for Python packages within the Python pak using PEP 302 import hooks 1
  • Various Python and KI fixes 1 2
  • Unicode keypress and chat support 1 2 3
  • Bridge the OpenUru and H'uru repos 1
  • Fix data type issues in hsMatrix44 getData/setData 1
  • Fix potentially uninitialized value in pfGUIListBoxMod 1
  • Rewrite audio caching to be threaded and not depend on DSound and Win32-specific APIs 1 2 3
  • Fix KI Photos saving an invalid JPEG files 1
  • Fix animated detector regions not animating 1
  • Screen incoming network messages to improve client security 1
  • Enable logging in external release builds 1
  • Replace hand-rolled encryption implementation with OpenSSL 1
  • Fix assert errors from hsBounds in debug builds 1
  • Some low-hanging fruit code fixes for cross-platform support 1 2 3 4 5 6 7 8 9 10 11 12
  • Fix tab-completion in the console 1
  • Made some Vault operations asynchronous 1
  • Fix compiling with Visual Studio 2008 Express Edition
  • Split server.ini console handling out into pfConsoleCore project
  • Fix crashing from custom avatars 1 2
  • Fix compiling the PlasmaMax plugin for 3DS Max 8 and 2011
  • Replace WinHTTP with cURL to fetch the server banner message 1 2
  • Change log/photo storage from "My Documents" to the AppData folder 1
  • Add /ServerIni argument to the client and launcher
  • Add console commands to set server keys and IP addresses (server.ini)
  • Remove bundled SDK dependencies
  • Redo the file/folder structure to bring Plasma to the top level
  • Remove broken NumLock handling input code 1
  • Various fixes to compile the up-to-date Windows and DirectX 9 SDKs
  • Replace Visual Studio project files with CMake project generator
  • Support building with newer versions of Python 2.x
  • Various code correctness fixes to make the codebase compile under Visual Studio 2010
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment