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
makeMulti
andmakeHybrid
.- We recommend using
weaponArray
andmakeOver
instead.
- We recommend using
v1.0.0-beta.12.1
Additions:
- Added the
makeRadialAuto
facilitator 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:
makeOver
andmakeBattle
have 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_CYCLE
property should be, defaults totrue
.maxDrones
: Maximum drone count, defaults to3
.
- They now have a 3rd argument,
- Changed the colour of shadow polygons from
pureBlack
todarkGrey
.
Fixes:
- Added blue color support to the leaderboard and minimap in FFA mode.
- Your name now properly changes on reconnect.
IMAGE
property should now work.
Removals:
makeHybrid
,makeOversplit
andmakeCross
have been merged intomakeOver
.makeHybrid
still exists for now to avoid breaking existing code.
makeSwarming
,makeBiSwarming
andmakeTriSwarming
have been merged intomakeBattle
.- Removed the
makeSplit
,makeConq
andmakeCap
functions.
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
PROPS
entity attribute.- Like
TURRETS
but decorative only. - The server does not calculate
PROPS
every frame, which improves performance for turret-heavy bosses.
- Like
-
Added the
Color
class.- Replaces the very unreliable
Gun.color
,Entity.color
andTileEntity.color
properties. - 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
compiled
can 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
Config
as an alias toc
.c
andConfig
are aliases of each other, but usingConfig
is advised for clarity.
-
You can now listen to the configuration changing via
Config.on('change', event => { whatever(event); })
.event
contains 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_PREFIX
configuration variable.- Allows you to change the prefix that bot names have.
-
Added
BOT_START_XP
configuration variable.- Allows you to change the xp that bots start with.
-
Added
WAVES
andCLASSIC_SIEGE
configuration variables.CLASSIC_SIEGE
determines if the first 34 waves should be hardcoded instead of randomly generated.WAVES
determines the amount of waves to beat in order to win.
-
Changed the facilitators a bunch.
- Added
color
andshape
to themenu
facilitator. - Added
frontRecoilFactor
andbackRecoilFactor
to themakeBird
facilitator. makeMulti
now works.- Added
weaponArray
which works pretty much like amakeMulti
but directly for guns, which also properly supports turrets.
- Added
-
io_minion
controller now acceptsleash
,orbit
andrepel
as 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_tiletest
to test out tiles. -
Added more dominator tiles to the
tiles/dominators
package.- 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
loadedAddons
global 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
info
packet 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
facingType
s. -
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.js
andturrets.js
are now definition groups that exist.
-
Auras hit crashers now.
-
The
ON
property 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
once
to an entry. What that property does is left as an exercise to the reader. kill
is now an event that can be listened for, which fires when an entity gets a kill.control
is 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_nearestDifferentMaster
has 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.chooseN
no 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.js
that tries its best to get the IP of the client now supports thecf-connecting-for
header.- Which means it now properly works when Cloudflare is used.
-
Tag gamemode now works better.
-
map_siege_legacy
has 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
-
labyFood
addon now has better documentation instead of just// good luck debugging this
. -
Bots are now red in FFA.
-
Dozens of grammar mistakes.
README.md
andindex.html
have 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
Class
instead ofexports
.
- You now have to use
v1.0.0-beta.11.2
Additions
- Added the
LayeredBoss
class tofacilitators.js
, which makes building bosses like celestials easier. - Added the ability to access
Class
in groups and addons as a global variable.- Converted all instances of
exports.[blank]
toClass.[blank]
.
- Converted all instances of
- Added
ensureIsClass
as 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.js
intocombined.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
COLOR
s. - 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
satellite
now go through walls. - Portal tiles now also teleport
satellite
projectiles too when the master goes through. io_disableOnOverride
has been updated to make use of theEntity.pacify
property, which setsEntity.damage
to0
whentrue
inEntity.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:
makeBird
adds a bird thruster to the back of a tank. (like the Falcon/Eagle/Phoenix/Vulture)makeMutli
lets 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/groups
have 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.js
file.
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
SHIFT
to move faster. - Support for theoretically infinite tiers.
- Visually upgraded.
- Has tank labels.
-
Updated the Chatbox.
- Added the option to press
ESC
to close the chat input. - Added the ability to close the chat input with
ENTER
if you didn't write any text.
- Added the option to press
-
Added
GPL-3.0
as the license. -
Added upgrade paths for
healer
tank. -
Added
UPGRADE_LABEL
entity attribute, which overrides theLABEL
for 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
healer
tank 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_COLORS
config variable, which sanitises player messages before they get added to the dictionary of chat messages. -
Added
recoilReceived
multiplier toStatusEffect
. -
Added
permanent
toio_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
PARENT
definitions. - Can be stopped by setting the second argument of the
entity.define()
call tofalse
.
- Does not fire for
-
Added
REROOT_UPGRADE_TREE
entity attribute, which sets the root of the tree to itself and rerenders the tree. -
Added
BOT_SKILL_UPGRADE_CHANCES
config 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_NAMES
entity 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_REGEN
andSHIELD_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.js
because 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.