User:Faust Vollmar
Revision as of 22:28, 3 January 2012 by Faust Vollmar (talk | contribs) (NexusCS and OWS Protocol Update. llRegionSayTo does the Key targeting first, so using a spread of channels to reduce processing is no longer necessary.)
About
An LSL [and a minor bit of PHP] scripter with a particular interest in SLRPG frameworks and weaponry.
Not a whole lot else to add really, no history nor achievements to speak of.
Projects
I should probably create sub-pages for my projects with a bit more comprehensive information and less rambling, but that can come later.
- Should I post Source code for the OpenSource projects? I'm not sure of complications the Contribution Agreement could have on managing them.
The project sections sound like advertising; I didn't mean it that way but that's kinda how my attempts to jot down what I do turned out.
[ Nexus CS ]
- This is my pet project, an SLRPG framework, it taught me LSL as I've gone along since '08,
and will teach me C# when we can use it in SL.
Design Basis
- A configurable Race/Class/Powers-based system in the vein of DCS2 and others like it, with some deviations from the standard model for such Systems.
- Non-profit System, all items related to the System are entirely Free and Copy+Transfer. (The System will remain available if I leave SL.)
- Funding for content (Sounds, Particle Effects, etc.) would be on a Donation basis.
- Due to Copy+Transfer, Animations will not be part of the System. The Weapon API will inform weapons of casting, allowing them to play Animations.
- Dealing with people -selling- the System will be a community effort. (The items are No Modify, making it difficult to disguise as something else.)
- Funding for content (Sounds, Particle Effects, etc.) would be on a Donation basis.
- No off-world Server. Sims use a Prim Server for Configuration storage. (The System will remain functional if I leave SL.)
- No Stats Tracking; Experience Points/Levels, Kill/Death counts, etc. (This is a result, either positive or negative, of the Prim Server design.)
- Attempt to design Weaponry to meet the needs of Free Use, Cheat Proofing, Versatility and Fairness.
- An open Weapon API for weapons to register their statistics with the CS Unit, which controls attacks internally. [Free Use, Cheat Proofing]
- Some statistics are weapon-defined (within reasonable values), the CS Unit calculates others to create a balanced result. [Versatility, Fairness]
- All weapons by all creators are equal. There will not be any form of 'enhancement' model. [Commercial Fairness]
Current Status
- Currently not available to the public, due to redevelopment to switch to the Prim Server design.
- I sometimes make exceptions to this. Case-by-case thing. Contact me if interested.
Outstanding Issues
- Raycasting currently does not allow for AoE Weapons, due to lack of a function for non-0 "Say" at arbitrary locations.
- (Could not find an existing JIRA for a llSayAt or similar function request.)
Design Feedback
- Suggestions for new Power casting Modes or Types. If you need the current list, IM me in-world.
- So far only the Weapon API is complete. Specifications for other equipment such as Armor (if it should be used at all) have not been defined.
- Should World Owners have direct access to the Comms Protocol for Attacks/Powers etc, such as being able to set their HMAC key?
** Comm Protocol Info
- [ User Input Channel ] : 9
- [ Dialog Menu Channel ] : 99 (Positive to allow /99Menu to retrieve the Menu.)
- [ Internal Channel Range ] : -1409,000,xxx
- [ Public Protocol ] : Weapon API and Status HUD input/output. Usage will be documented.
- Channel; Weapon API = -1409000000
- Channel; Status HUD = -1409000001
- Method; = llRegionSayTo()
- Header; = "NCS"
- Payload; = Double-Pipe ("||") delimited, with Single-Pipe ("|") delimited sub-sets.
- [ Private Protocol ] : HMAC-Signed Data for System API input/output.
- Channel; System API = -1409000002
- Method; Targeted = llRegionSayTo()
- Method; Area = llSay()
- Header; = "NCS"
- Payload; = Double-Pipe ("||") delimited, with Single-Pipe ("|") delimited sub-sets.
[ OpenSource Weapons Systems ]
- This was a project born of wanting my own take on the well-known LCK weapon scripts, but has since evolved over time into it's current state.
- Basically boils down to a project to make two base sets (One for Melee, one for Range) that can be used for SLRPG weapons.
- Intended for broad compatibility with any CombatSystems that do not require proprietary weapon scripts.
- Plugin API leaves the door open for owners of systems that use proprietary weapon scripts to make plugins, if they so choose.
- There's really not much to say here. It does what it's meant to do and sometimes I add/fix something.
Melee Weapon Scriptset
Release
- Current Version: 2.4.4; updated 29.Aug.2011
- Free on the SL Marketplace or just IM me in-world.
Outstanding Issues
- No coordination between multiple MainHand weapons.
- Lesser issue for Melee, but needs to be resolved for the Range version.
- HUD will issue commands to all worn MWS weapons at once, not always desirable behavior.
- Not hard to fix script-wise, but I lack icon art for differentiating which button is which.
- Menu System complicated to setup. Not useful for the Color plugin at all.
Range Weapon Scriptset
- No Release: Working out issues with the Melee version, not well-versed in bullet rezzer design.
** Comm Protocol Info
- [ User Input Channel ] : 4 (Default, configurable to use any Channel > 0)
- [ Dialog Menu Channel ] : -99 (Default, configurable to use any Channel)
- [ Internal Channel Range ] : -1409,001,xxx
- [ Public Protocol ] : Protocol not likely to be used, however messages are documented in the Project's packages.
- Channel; = -1409001000
- Method; = llRegionSayTo()
- Header; = "OWS"
- Payload; = Single-Pipe ("|") delimited.
- NOTE: Versions 2.3.5 and prior, MWS sub-project comms did not have a Header and used channels -851000000 to -851999999.
- NOTE: Versions 2.3.6 to 2.4.4, MWS sub-project comms used channels -1409010000 to -1409010999.