PUCK RUSH - WHAT CHANGED ======================== Newest first. Dates are when the version was built. 1.2.5 ----- * Everyone needs this version to play online. Every copy before it carries an updater that quietly fails, so there is no way to fix it from inside the old one - download this once from kl-productions.xyz and updating works normally from here on. * The sound pack was given a fresh key, so this is a whole download rather than a patch. 1.2.4 ----- The updater actually updates now * The game asks about a new version every time it opens, and offers it there and then. You had to go and look in the menu before, which is no use at all when the version you are on is the one with the fault you are updating to get away from. It asks while the title screen is still playing, so it costs you nothing, and says nothing unless there is something new. It can be turned off in the settings. * It did not install. It wrote a small script that waited three seconds and then copied the new files over the old ones - but three seconds was a guess at how long you would take to press a key at the "please restart" message, and anybody listening to that message takes longer. The copy then ran while the game was still open, Windows refused to overwrite a running program, and the error went nowhere. The game carried on as though nothing had happened. * There is no script any more. The new version is put in place there and then, and the game restarts itself into it. * It also never restarted itself even when the copy did work, because it checked for something the build does not set. * You no longer see a black window running "ping" during an update. That was the script's way of waiting three seconds, and it looked - reasonably enough - like the game was doing something it should not have been. * Nothing else speaks over an update either. The keys that work everywhere are held back until it is finished, so a stray keypress or a timed-out check cannot announce something alarming halfway through. 1.2.3 ----- Lobby keys * F1 says who is online, from the lobby or from inside a room. Help has moved to F2. Chat * Pressing the match chat key in a match against the computer, or against somebody on the same keyboard, now tells you there is nobody to chat to. It used to do nothing at all, which is impossible to tell apart from a key that is not working. 1.2.2 ----- Fixed: the game had no sound at all * The built game worked out the wrong folder for itself. A one-file build unpacks into a temporary folder and runs from there, and the game took that to be its own folder - so it went looking for its sound pack somewhere the player has never seen, did not find it, and came up completely silent. It now finds its real folder whichever way the build was made. * The same mistake meant that updating from inside the game unpacked the new version into that temporary folder, so the update appeared to work and then was not there. Downloaded sound packs went the same way. Both now land in the game folder. * If the sounds ever fail to load again, the game says so and names the file it went looking for, instead of just being quiet. Two chat keys, not four * Slash is the public chat: the lobby, or the room you are in. Apostrophe talks to your opponent during a match, and can be rebound. That is all of them. * Semicolon and T no longer open chat. T was the match chat key as well as a lobby one, so a single keystroke meant the lobby chat in one place and the match chat in another - the two chats the game has, on the same key. * If you had already rebound your match chat key, it still works. The old default keeps going for anybody who had saved it. Arcade, online * In an online arcade match, the guest was rolling its own shields and disappearing pucks instead of being told about the host's. It would announce that the puck had vanished when it had not, or hand out a shield the host had never given anybody. The host's state put it right a thirtieth of a second later, but you had already heard it. Only the host rolls now, and the guest is told. * A shield landing while one is already up no longer says "shield up" a second time. Ping * F3, from anywhere in the game, times the round trip to the server. A sound goes out with the question and another comes back with the answer, so you hear the length of the delay before it is read out in milliseconds. If the server does not answer within ten seconds it says so. What is new, in the game * /changes opens a list you can arrow through, a line at a time, saying what has changed. It comes from the server, so it can be updated without a new build - and if the server has nothing to say, you get the changelog that came with your copy instead. Chat * Pressing slash to chat no longer puts a slash in the box for you. It used to, on the reasoning that anybody reaching for that key wanted a command - but slash is simply where a lot of people expect the chat key to be, so they typed a sentence and sent "/hello everyone", which is not a command, and their message went nowhere. The box opens empty now. To send a command, type the slash yourself. * The chat box says what it is for and reads back what is already in it, or says blank. So does every other text box in the game. Fixed * The downloaded game opened a window and then said nothing at all. The screen reader libraries were being left out of the build, so every way the game had of speaking failed at once, and with no console there was nothing to print the problem to either. They are in the build now, the build refuses to package itself without them, and a copy that still cannot speak says so in a message box instead of sitting there silently. * If the game does fail to start, it now writes what happened to error.log in your Puck Rush folder and shows it, rather than leaving you with a blank window. The computer opponent no longer cheats * Its paddle was wider than yours - noticeably so from level 3 up. It is the same width as yours now, on every level. * It never had to time a return; it got one for free every time the puck came within reach. It presses like you do now, and it can be early or late. * It knew exactly where every puck would land, bounces and all, the instant it left your paddle. It now reads the flight as it comes, can only follow so many bounces, and the harder the level the better it reads. A shot banked twice will genuinely fool the lower levels. * On the top levels it also moved faster than your paddle can. The hardest computer opponent now crosses the board at exactly your speed. * It misses because it was out of position or mistimed the return, both of which you can hear happening - not because a dice roll said so. Physics * How you are moving when you return the puck now goes into the return. Plant the paddle and it goes back the way it came; sweep across it and you cut an angle. Moving into the puck puts pace on it too. * Wall bounces keep nearly all of their angle. They used to lose up to three quarters of it on the easier levels, which meant bank shots did not really exist. They do now. * Returns are far less random. Where the puck goes is mostly what you did with it. 1.2.1 ----- Fixed * Chatting in the lobby looked dead. Your own line was only spoken when the server echoed it back, so if the echo never arrived you heard nothing at all. You now hear it the moment you send it, once, and you are told if it could not be sent. * A match against the computer, chosen from the lobby menu, walked you through the setup and character menus first. It now starts straight away on the settings you last used. The full setup is still on the main menu. 1.2.0 ----- Message buffers * Everything the game says in passing now lands in a buffer you can read back: everything, chat, games and server. * Bracket keys move between buffers, comma and full stop move through the lines, shift with them jumps to the first or last, backslash says where you are, and control C copies the line. * They work anywhere, including mid-match - except while you are typing, where a comma is just a comma. Chat keys * Apostrophe and slash open chat as well as semicolon and T. Slash puts the slash in the box for you, since a line starting with one is a command. Everyone on the same version * The server turns away builds older than it accepts, and says which version is needed. The game offers to fetch it there and then. * A saved login cannot sneak an old copy past that. * The game also refuses a server older than itself, and says so plainly - that one is the server's problem, not yours. 1.1.1 ----- The lobby is a room now * Signing in puts you in a room you can walk around with the arrow keys while you wait, instead of sitting in a menu. * You hear your own footsteps and everyone else's, from wherever they are walking. The walls stop you. * Enter opens the menu from anywhere in the room - there is nothing you have to walk to. * C says where you are standing, P who else is in the room and how far off. * Going into a game takes you out of the room, so nobody hears you pacing while you play. Fixed * Online play could not connect at all if you had run an earlier build: the saved settings kept pointing the game at your own computer. * Text boxes said "not available" when you pressed up on an empty one, and answered a bare number when you pressed down. They now say "blank" and "13 characters". * Capital letters are announced when you type or read back a box, so you can tell what you actually typed. * No box starts with a name already in it. 1.0.0 ----- First release. The game * Two players, a paddle each, a puck between them. You hear the puck as a rolling sound: left and right by ear, near and far by volume, and the wall it bounced off by its pitch. * Serve with space, hold left or right as you serve to angle it. Every paddle hit makes the puck faster and the angles wider. * First to the chosen score, two clear points ahead. Sit on a serve for fifteen seconds and the point goes to your opponent. * Six difficulty levels, five match lengths, five character voice packs, a full announcer, and an optional echo location ping. * Arcade mode: a shield can appear behind either player for ten seconds, and the puck sometimes turns invisible until the next hit. Playing other people * Against the computer, two players on one keyboard, over the local network, or online. * Local network games find each other by themselves - no typing an address. * Online: accounts with a verified e-mail, a lobby that is a chat room, games you create and host, passwords on games if you want them, live spectating, Elo ranking and statistics. * The host of a game picks who plays and starts the match when everyone is ready. Getting around * Everything is spoken. Arrows, enter and escape, and that is the whole interface. * Text boxes are properly editable: arrows walk the line, ctrl with them moves by word, and every character is read as you go. * Page up and page down set the music volume from anywhere, and it is saved. * F7 says how long the server has been up, and the record for its longest run. * Semicolon chats, in the lobby, in a game, and during a match. * English and Polish, and every key can be rebound. Under the hood * Physics run at a fixed 120 times a second, so the puck moves the same on any machine, and goal lines are crossed exactly - a fast puck can never slip past a paddle. * Menus are built from local state and never wait for the server, so a bad connection can annoy you but cannot freeze the game.