Releases: Taureon/aps-plus-plus
v1.0.0-beta.13
Additions:
- Tips now appear when loading the game.
- These can be edited in
public/lib/config.js.
- These can be edited in
RESPAWN_TIMEOUT, controls how long you have to wait to respawn.bulletSpawnOffset, controls how far the bullet spawns compared to your gun.SHOW_HEALTHBAR_TEXT, toggles showing text on health bars.REGENERATE_TICK.TEAM_WEIGHTS, controls how many members a team can have in comparison to an unweighed team.ENABLE_FOOD, toggles spawning polygons.- Added
makeTurret. - Added dev boss for Æ🚫Sports.
- Added the remaining Whirlwind branch tanks (except Prophet since that breaks the game) to dev menu.
- Added the tanks featured in the 2023 Daily Tanks event to dev menu.
- Added the rest of the Flail branch to dev menu.
- Added the Marksman's upgrades.
Changes:
- Overhauled the main menu.
- Made Celestials 10x rarer outside of normal gameplay by default.
- Overhauled how bot names are chosen.
- Most bosses and projectiles now use
weaponArray. - Updated Toothless' dev boss.
- Made Flail and Undertow work.
Removals:
- Removed
makeMultiandmakeHybrid.- We recommend using
weaponArrayandmakeOverinstead.
- We recommend using
v1.0.0-beta.12.1
Additions:
- Added the
makeRadialAutofacilitator to speed up the creation of tanks like the Auto-3.- The description of options is listed as a comment in the function code.
Changes:
makeOverandmakeBattlehave been improved.- They now have a 3rd argument,
options, which should be an object that can have the following properties:angle: A default angle to the guns, defaults to125.count: Amount of guns, defaults to2,independent: If the projectile is independent, defaults tofalse.extraStats:, Extra gunvalues to add, defaults to[].- 2 extra properties for
makeOver: cycle: What the guns'WAIT_TO_CYCLEproperty should be, defaults totrue.maxDrones: Maximum drone count, defaults to3.
- They now have a 3rd argument,
- Changed the colour of shadow polygons from
pureBlacktodarkGrey.
Fixes:
- Added blue color support to the leaderboard and minimap in FFA mode.
- Your name now properly changes on reconnect.
IMAGEproperty should now work.
Removals:
makeHybrid,makeOversplitandmakeCrosshave been merged intomakeOver.makeHybridstill exists for now to avoid breaking existing code.
makeSwarming,makeBiSwarmingandmakeTriSwarminghave been merged intomakeBattle.- Removed the
makeSplit,makeConqandmakeCapfunctions.
v1.0.0-beta.12
Hey APS++ users!
It has been almost 3 months since the last changelog.
We have big reworks planned, but they are FAR from finished.
Have some minor reworks and smaller additions and fixes though!
(17 additions, 18 changes/fixes, 2 removals)
Additions:
-
Added
PROPSentity attribute.- Like
TURRETSbut decorative only. - The server does not calculate
PROPSevery frame, which improves performance for turret-heavy bosses.
- Like
-
Added the
Colorclass.- Replaces the very unreliable
Gun.color,Entity.colorandTileEntity.colorproperties. - You can set specific properties or also just use the
Color.interpret()method. - The class contains the following properties:
base,hueShift,saturationShift,brightnessShift,allowBrightnessInvert,compiled - All of which except
compiledcan be set. - This will also fix some color bugs aswell as add new ones to patch later.
- Replaces the very unreliable
-
You can now use
Configas an alias toc.candConfigare aliases of each other, but usingConfigis advised for clarity.
-
You can now listen to the configuration changing via
Config.on('change', event => { whatever(event); }).eventcontains the following properties:setting(the setting, in SCREAMING_SNAKE_CASE),oldValue(what the value is),newValue(what the value will be set to),preventDefault(prevents the change from taking place)
-
Added
BOT_NAME_PREFIXconfiguration variable.- Allows you to change the prefix that bot names have.
-
Added
BOT_START_XPconfiguration variable.- Allows you to change the xp that bots start with.
-
Added
WAVESandCLASSIC_SIEGEconfiguration variables.CLASSIC_SIEGEdetermines if the first 34 waves should be hardcoded instead of randomly generated.WAVESdetermines the amount of waves to beat in order to win.
-
Changed the facilitators a bunch.
- Added
colorandshapeto themenufacilitator. - Added
frontRecoilFactorandbackRecoilFactorto themakeBirdfacilitator. makeMultinow works.- Added
weaponArraywhich works pretty much like amakeMultibut directly for guns, which also properly supports turrets.
- Added
-
io_minioncontroller now acceptsleash,orbitandrepelas arguments.- They determine distance ranges that were hardcoded before.
-
Added Devboss by Toothless: "NightFury".
- A black and magenta triangle boss with 2 sniper turrets on all sides and a glow.
-
A whole bunch of Arras.io Entities.
- Repeater, Duplicator, Iterator, Undertow, Riptide, Flail, Double Flail, Triple Flail, New Sidewinder, Coil, Python, Ranch, Oroboros, Cocci.
- Many of those may not be fully implemented and are placeholders.
-
Added
map_apspp_tiletestto test out tiles. -
Added more dominator tiles to the
tiles/dominatorspackage.- It now exports:
contested,dominatorBlue,dominatorGreen,dominatorContested,sanctuaryBlue,sanctuaryGreen,sanctuaryContested
- It now exports:
-
Added recursive folder support for loading addons.
- You can now have folders in your addons folder and it will load the addons inside them, helpful for organisation.
-
Added
loadedAddonsglobal variable, which contains the addon file names that have been loaded so far, minus the.js.- Intended for addons to make it easy to check if an addon exists.
-
Added an
infopacket type that the server can send to display custom disconnect messages.- Does not disconnect the player.
-
Added an option for the lifetime of popup messages.
socket.talk('m', duration_in_milliseconds, 'Message here!');- There is also the configuration variable for
MESSAGE_DISPLAY_TIME, which is used by default where the server sends a popup.
Fixes and Changes:
-
You can now aim while autospinning.
- This improves drone gameplay, as you are no longer forced to direct them at a fixed point in front of you.
-
Turrets can now have arbitrary
facingTypes. -
Colors are now more accurate to what Arras.io has.
- This now finally settles the Hexagon Color Debate.
-
Various HUD improvements.
- Better Upgrade Animation and Buttons.
- Mockup size bugs have been mostly fixed.
- Stopped hiding the upgrade tree on death.
-
Various Definition refactors.
- They act mostly the same, except that there are various nerfs, buffs, turret changes and such.
projectiles.jsandturrets.jsare now definition groups that exist.
-
Auras hit crashers now.
-
The
ONproperty has been reworked.- Instead of making its own unoptimised implementation of events, it simply makes use of the fact that
Entity extends EventEmitter. - You can also now add the boolean property
onceto an entry. What that property does is left as an exercise to the reader. killis now an event that can be listened for, which fires when an entity gets a kill.controlis now an event that can be listened for, which fires when an entity gets possessed by a player.
- Instead of making its own unoptimised implementation of events, it simply makes use of the fact that
-
Turret aims faster at low angles.
- It should now no longer miss as much if you just move perpendicularly.
-
Turrets and Bots should no longer try to shoot through walls as much.
io_nearestDifferentMasterhas been given wall detection checks from a rather unethical old project of the head maintainer.
-
The addition and replacement of controllers has been improved.
-
ran.chooseNno longer modifies the input array.- Makes use of
ran.shuffle, which has been added. - You can now choose more elements than there are in the input array.
- Makes use of
-
The code in
sockets.jsthat tries its best to get the IP of the client now supports thecf-connecting-forheader.- Which means it now properly works when Cloudflare is used.
-
Tag gamemode now works better.
-
map_siege_legacyhas had its nest updated. -
Big food now no longer take up the entire map in Growth mode.
- They now have
LEVEL_CAP: 45.
- They now have
-
labyFoodaddon now has better documentation instead of just// good luck debugging this. -
Bots are now red in FFA.
-
Dozens of grammar mistakes.
README.mdandindex.htmlhave been modified a bunch, and I don't wanna write it all down.
Removals:
-
Removed the testing tanks: "God Basic", "Maximum Overdrive" and "Testing Animated Colors".
- We don't really need them anymore
-
You can no longer just export definitions from addons.
- You now have to use
Classinstead ofexports.
- You now have to use
v1.0.0-beta.11.2
Additions
- Added the
LayeredBossclass tofacilitators.js, which makes building bosses like celestials easier. - Added the ability to access
Classin groups and addons as a global variable.- Converted all instances of
exports.[blank]toClass.[blank].
- Converted all instances of
- Added
ensureIsClassas a global function. - Added an error popup to the client so users look at the devtools console for once when an error occurs.
- Added custom theme input to the main menu.
- Added Frostbvte's Devboss: Extrasolar
Changes
- Merged
class.jsintocombined.js. - Updated
gunvals.js. [NOT BACKWARDS COMPATIBLE] - Updated Hexagons to be stronger and to be Purple instead of Teal to avoid it looking identical to Legendary Hexagons.
- Updated Diamond Marauder and Shiny Omega Thaumaturge to be cooler.
- Updated X-Hunter's design.
- Updated the Sentinels.
- Updated Big Cheese to reload slower.
- Updated all swarm drones to not be as strong as basic bullets.
- Updated maze walls and maze generation.
- Updated the developer menu yet again.
- Updated tiered food to have less pushability the higher the tier.
- Updated the Dread V2 Photosphere to match Arras.io.
Fixes
- Fixed TDM with 4 teams or more overwriting other team bases.
- Fixed the screen wandering to the bottom right when an error occurs.
- Fixed transparent tanks being pixelated.
- Fixed guns not accepting RGB
COLORs. - Fixed guns spawning bullets slightly further than where their gun barrel ends.
- Fixed entities being slightly larger than their hitboxes.
- Fixed being able to send messages while loading into the game.
- Fixed color changes occasionally error-ing the client.
- Fixed entity colors not working on the leaderboard.
- Fixed
Entity.say()doing literally nothing. - Fixed Reverse Tank persisting between deaths.
- Dozens of minuscule code changes that don't need individual mentions.
v1.0.0-beta.11.1
Fixes
- Entities of type
satellitenow go through walls. - Portal tiles now also teleport
satelliteprojectiles too when the master goes through. io_disableOnOverridehas been updated to make use of theEntity.pacifyproperty, which setsEntity.damageto0whentrueinEntity.refreshBodyAttributes().- Updated Overdrive to match Arras.io.
v1.0.0-beta.11
There's still a few bugs left to squash - but we're pretty much ready for the next release!
Additions
- Added Desmos and the rest of its branch. (Including Volute!)
- Their wavy bullets are currently a bit janky, but it’s better than nothing.
- Added Whirlwind to the testing menu.
- Featuring working satellites!
- Added Rocketeer.
- Added Shaman, the Hexagon Mystical.
- Because why not?
- Added Atlas and Rhea, two leaked celestials.
- Added a new default addon that makes the game spawn Labyrinth polygons. (disabled by default)
- Added Sanctuaries.
- Added a few new default functions:
makeBirdadds a bird thruster to the back of a tank. (like the Falcon/Eagle/Phoenix/Vulture)makeMutlilets you effortlessly make flank tanks.
- Added the remaining Arras.io themes that weren't included in the template yet.
- Upgrades options can now have custom labels, custom background colors, and tooltips.
- You'll notice this in the dev menu, as the bosses now have their own background colors.
- Added dev bosses for DogeIsCut and Trioplane.
Fixes
- Adjusted Bulwark’s trap launchers to match Arras.io.
- Labyrinth polygons are now properly sized.
- You can now change Basic's name to something else.
- Reverse Tank no longer inverts drone controls.
Changes
- Room rework.
- Improved Siege.
- Now has Sanctuaries instead of Dominators.
- Improved notifications.
- Healer is now on Tier 2 instead of 1.
- Sidewinder now upgrades from Volute instead of Launcher.
- Because that’s what damo’s planning, apparently.
- Rocketeer will take its place in Launcher’s upgrades.
- Reworked the dev menu. Again.
- The contents in the Tools menu have been moved to the root directory.
- Moved the Fun/Testing tanks to their own menu in the root directory.
- Reorganised the Tanks menu.
- Added a new section to the Tanks menu for tanks that aren't available at the current moment. This currently contains the Healer.
- Begun work on changing numeric colour ids to alphanumeric ids. (e.g.
16 => "grey")- Most instances in
definitions/groupshave been updated.
- Most instances in
- The legacy/scrapped tanks have been moved to a separate addon. (not included by default)
- OSA now requires Node.js version 18.
- Removed the leftover
definitions.jsfile.
v1.0.0-beta.10
-
Added a new System for Split Upgrades (like in Scenexe):
- Tanks and upgrades can be defined as an array of strings.
- Every definition contributes its guns, body stats, turrets, upgrades, and other things.
- Each definition can be upgraded separately. (e.g. Assassin-Twin -> Assassin-Bulwark)
- Upgrades can be batched with
BATCH_UPGRADES, listing every combination and forcing all branches to be upgraded at the same time. - Upgrade branches can have labels with
BRANCH_LABEL. - Client-side upgrade limit raised from 32 to 100.
-
Added a way better upgrade tree.
- Move in all 4 directions with arrow keys.
- Hold
SHIFTto move faster. - Support for theoretically infinite tiers.
- Visually upgraded.
- Has tank labels.
-
Updated the Chatbox.
- Added the option to press
ESCto close the chat input. - Added the ability to close the chat input with
ENTERif you didn't write any text.
- Added the option to press
-
Added
GPL-3.0as the license. -
Added upgrade paths for
healertank. -
Added
UPGRADE_LABELentity attribute, which overrides theLABELfor the upgrade picker. -
Added load time statistics for definitions loading, addon loading and mockup generation.
-
Added a color cache for
modifyColor. -
Added more statnames.
-
Reworked the dev menu.
-
Moved generic client-side color-related functions to gameDraw.js.
-
Made a better fix for adding
healertank tobasic's upgrade list if the gamemode is siege. -
Made Sphere shine.
-
Improved client-side turret rendering.
-
Improved FOV to be similar to how arras.io's FOV changes as you grow.
-
Fixed complex food (Relics and Laby shapes) shapeshifting when spinning.
-
Fixed healer-tanks' stat names.
-
Fixed an error related to controllers resetting.
-
Fixed an error related to
combineStats' backwards compatibility. -
Fixed more mistakes that don't really matter.
-
Fixed a Manhunt related crash.
-
Fixed a crash related to
modifyColor. -
Minor default-configuration changes.
v1.0.0-beta.9.1
Fixed healer being always available.
Thanks, @Trioplane
v1.0.0-beta.9
-
Added
SANITIZE_CHAT_MESSAGE_COLORSconfig variable, which sanitises player messages before they get added to the dictionary of chat messages. -
Added
recoilReceivedmultiplier toStatusEffect. -
Added
permanenttoio_zoom, which auto-zooms. -
Added a 256-character message length limit to
basicChatModeration.js. -
Entity.define()now emits a"define"event.- Does not fire for
PARENTdefinitions. - Can be stopped by setting the second argument of the
entity.define()call tofalse.
- Does not fire for
-
Added
REROOT_UPGRADE_TREEentity attribute, which sets the root of the tree to itself and rerenders the tree. -
Added
BOT_SKILL_UPGRADE_CHANCESconfig variable, which determines how likely player-bots are to pick each skill upgrade. -
Added Dreadnought V2 (with a Hexagon Tier) as a default addon that comes with the template.
- Because of how long it takes to load the huge amount of entities, it is disabled by default.
-
Reworked
STAT_NAMESentity attribute.- It's now an object with the following optional attributes:
BODY_DAMAGE,MAX_HEALTH,BULLET_SPEED,BULLET_HEALTH,BULLET_PEN,BULLET_DAMAGE,RELOAD,MOVE_SPEED,SHIELD_REGENandSHIELD_CAP. - The values are strings, and they determine the name of the stat in the skill upgrade menu at the bottom left.
- It's now an object with the following optional attributes:
-
Fixed the killed entities counters in the death screen being just completely wrong altogether.
-
Fixed (un)dead entities being kept alive against their will when being touched by walls or rocks.
-
Fixed some entities appearing with a gray bar in the leaderboard.
-
Fixed a crash bug related to resetting IOs but keeping
io_listenToPlayer. -
Fixed a crash bug related to trying to visit nonexistant webpages.
-
Improved
TURRET_FACING_CLIENT.- Now it just matches the master's angle.
-
Resized entity borders to match Arras.
-
Removed
lib/definitions.jsbecause it causes confusion to new people trying to pick up APS++.
v1.0.0-beta.8.1
Fixes
- Fixed a bug that made IOs from bosses transfer over if you were a boss and you changed to Developer.