Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Edge breaking has never been so broken. Inspired by micro500's results, I tried somethings, and it looks like you can keep up edge breaking to set up multiple keypoints and an edge. Yes, you read that right. The other big breakthrough is that if you edge breaked on a non-drawable part of the playing field, you can then continue egdge breaking and effectively go out of bounds, but if you edge break on a out of bound part, you have the next frame to either continue the out of bounds, or edge break back in for 1 frame, drawing an invisible keypoint (or edge if it is your last input by edge breaking) anywhere on the drawable field, then go out of bounds again (you can then edge break in the playing field again. This means, if we generate multiple keypoints by edge breaking, only the last will be an edge (following normal rules of edge generation: start when you first input, end when you stop input for one frame) This leads to the fact that you can generate models while ENTIERELY EDGE BREAKING. In short. because we go out of bounds with edge breaking, and are able to sgo in bounds again then continue the out of bounds, we can draw invisible models!! We can essentialy do every answer in the game with one pixel (or two if it is a mutli-digit answer) with only invisible models, not having to draw over drawings to manipulate their outcome. This leads to the most hype 2015 meta speedrunning strats in history. Link to video Movie file if you somehow get it to sync I'll do a more thorough explaination on this tommorow, but you can see the gist of what's happening by watching the movie yourself. At this point, what do we need to have complete control of the game? Right now, we can manipulate a double edge (quadruple edge if double digits) drawing very easily. A bot could be made right now to manipulate any double and quadruple edge drawing. Our only problem now is what to do with drawings with more edges? We have two solutions: - either limit every drawing to be drawn in one line (exciting) - find a way to manipulate numbers easily with more than 2 (4 on multi digit) edges But at the point we're at, something can be quickly done in the way of botting, and as such should be left to micro500 (and other people who are willing to help, just chill on the tasvideos irc!) and try to find other tools that could possibly improve manipulation.
sack_bot
He/Him
Player (112)
Joined: 11/27/2011
Posts: 394
Location: Massachusetts
... Does Desume have a way of tilting the displays sideways? I think it does
Message me here for my discord. Current Project: Psycho Waluigi Project on wait list: None?
Spikestuff
They/Them
Editor, Publisher, Expert player (2642)
Joined: 10/12/2011
Posts: 6438
Location: The land down under.
sack_bot wrote:
... Does Desume have a way of tilting the displays sideways? I think it does
In dumping and screenshots it's like that. You have to modify it in video editing to make it sideways (it's not that hard).
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
sack_bot
He/Him
Player (112)
Joined: 11/27/2011
Posts: 394
Location: Massachusetts
Spikestuff wrote:
sack_bot wrote:
... Does Desume have a way of tilting the displays sideways? I think it does
In dumping and screenshots it's like that. You have to modify it in video editing to make it sideways (it's not that hard).
Oh. Not as easy as I thought, but still not hard
Message me here for my discord. Current Project: Psycho Waluigi Project on wait list: None?
Skilled player (1741)
Joined: 9/17/2009
Posts: 4981
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
The current TAS drew artwork. I think something that can also be added to, is to make accept wrong numbers such as "12 - 8 = 90" or something. Edit: Or make it accept something like 12 - 8 = *"Four" *2+2 *0100 *四 *Black out the screen and leave the white parts displaying "4"
Emulator Coder, Player (74)
Joined: 10/4/2005
Posts: 197
jlun2 wrote:
The current TAS drew artwork. I think something that can also be added to, is to make accept wrong numbers such as "12 - 8 = 90" or something. Edit: Or make it accept something like 12 - 8 = *"Four" *2+2 *0100 *四 *Black out the screen and leave the white parts displaying "4"
These are great ideas! I'm definitely going to implement some for the AGDQ 2016 run.
Post subject: Decoding the questions table
Emulator Coder, Player (74)
Joined: 10/4/2005
Posts: 197
I have found a question table that is used while in-game. Here is a lua script to decode it for you:
local start_addr = 0x020E9A00

for i=0,99 do
  local this_question_offset = start_addr + i*4
  local operation = memory.readbyte(this_question_offset + 0x374)
  local first_number = memory.readbyte(this_question_offset + 0x54)
  local second_number = memory.readbyte(this_question_offset + 0x1E4)
  
  local operation_string
  if (operation == 0) then
    operation_string = "+"
  elseif (operation == 1) then
    operation_string = "-"
  elseif (operation == 2) then
    operation_string = "*"
  else
    operation_string = "?"
  end
  print(first_number .. " " .. operation_string .. " " .. second_number)
end
Next step is to figure out where the table comes from, or if it is randomly generated.
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
We now have complete and total control over answers in Brain Age*
sack_bot
He/Him
Player (112)
Joined: 11/27/2011
Posts: 394
Location: Massachusetts
xy2_ wrote:
We now have complete and total control over answers in Brain Age*
How?
Message me here for my discord. Current Project: Psycho Waluigi Project on wait list: None?
Skilled player (1741)
Joined: 9/17/2009
Posts: 4981
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
xy2_ wrote:
We now have complete and total control over answers in Brain Age*
Awesome! Sounds like the current TAS could updated to have more things to show potentially. :D
Emulator Coder, Player (74)
Joined: 10/4/2005
Posts: 197
xy2_ discovered that any point in the drawing area with an X coordinate of 246 does not draw a dot on screen, but is used for the number recognition. This can be combined with edge breaking to create a completely invisible model that is accepted by the game. Example: Link to video xy2_ also discovered that the game will not recon anything drawn if you start on the border of the drawing area. We can combine this with edge breaking to draw a complex picture (including multiple lines) without lifting the pen, and the game will completely ignore it. We can then combine it with the invisible models strategy above to make it appear as though the game accepted the drawing as the correct answer.
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Link to video A very cool stunt doable by inputting on the exact same area 6 times (preferably in the godspot of x 246 so it doens't show up.)
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Following the heated debate, one thing has been made clear: almost all of the TASvideos community agrees we should not use out of bounds drawing, and I and micro500 both agree. As such, out of bounds drawing will not be used unless absolutely necessary, and we hope it never comes to that. micro500 is currently doing work to make a program needed for artists. This would allow artists to draw a picture within Photoshop, MSPaint or your favorite drawing tool, see if your picture has the correct size and drawn within the correct limitations (4x4 square pen). If not, it would highlight what is either needed or missing and, ultimately, automatically fix it.
Analysing and fixing a wrong picture
We are trying to get this done very quickly as we need all the artists we can as soon as possible, while making it as easy as possible for them and not having them using DeSmuME in any steps! The submission method is being worked on. For now, our solution is a dedicated Skype account. As soon as the main thing (drawing fixer) is done, we will advertise to artists.
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Link to video Relatively useful glitch. By doing a frame-perfect submit, you can skip what you draw getting recon. You still need to do a first drawing to enable the 'Submit' button, though.
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Link to video Bias can be abused in many ways. Masterjun demonstrates, that, using bias, it is possible to recover from '?' answers, leading to things like this.
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
I've updated all relevant information into one page that's not horribly outdated.
Post subject: actually doens't do another segment
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
A game-breaking trick has been found.. input storage. This trick has many uses: it allows you to create exactly one fake segment, start drawing one frame earlier and create the two disctint segments of the drawing without lifting the pen (saving one extra frame). Essentially, this saves 2 frames on every drawing, and the current TAS is now horribly unoptimised. How does it work? It's simple to execute. - Get a right answer. During the interval of doing the last drawing input and your drawing getting crossed off, you have exactly 7 frames. - 2 frames before the accepted drawing is crossed off screen, do an input. This input is now stored and will transition over to the next drawing. - There is a small, hidden loading time for the game to load the next question. You must start input maximum 2 frames after the drawing vanishes (counting the frame where the drawing vanishes as one frame) to keep your stored input. You can do any input before, but it doens't affect anything. Hold the input until 3 frames after the vanish.
The visual result
- At 4 frames after the vanish, your input appears! You may note something very particular: you're drawing a line out of nowhere, where you would be supposed to draw a single pixel. What's even more odd, hovewer, is that your stored input, while being drawn on screen, actually doens't exist in memory and belongs to the answer before! This means your segment actually starts at your first input on the new drawing field, even though it doens't visually appear so. We have just created a fake line! This is showcased in the following picture: we get a 7 because this is only one individual input (which will always give a 7), even though it doens't show as such visually. The orange is the stored input (which doens't exist), blue is the real input (which is registered.)
Behind the scenes
- An even odder thing: after having an input into storage, you can continue that segment as long as you want. However, edge breaking will not start another segment, but allow you to be able to draw further on, as shown in the third picture. In this example, I succesfully draw a 0 with it. Here, I move from my initial blue input to the top of the screen to edge break (demonstrated by the red line) then maneuveur out of bounds (dark blue) and get back in bounds for one frame (light blue). I have executed basic edge breaking.
New segment without dropping input
- Even odder: if you don't edge break to do another segment and do an input that is not close to any of your current inputs, the game gets insanely confused and gives you an ?, unable to be recovered from. This is a huge discovery: it can save many frames, the starting (fake) input will make manipulation a lot easier, and allow me to start with an invisible input without using godspots (what I was forced to use before, really limited..) However, it will make drawing much harder, since you can't edge break with this trick, unless you want to draw another segment. This trick can also only be used once for each manipulation. This (again) brings up the question of: is this cheating? Is drawing one fake line decieving the viewer? I'll leave that up to you.
Skilled player (1741)
Joined: 9/17/2009
Posts: 4981
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
I think at this rate it'll be easier to make a script to convert picture files into black white lines that the game can accept than obsolete the current run if pretty much every trick discovered will be called "cheating". :|
Player (75)
Joined: 8/26/2015
Posts: 70
I'm struggling to reproduce this. Could I have a movie file please?
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
AdituV wrote:
I'm struggling to reproduce this. Could I have a movie file please?
Forwarded a movie file to AdituV per her request.
Skilled player (1741)
Joined: 9/17/2009
Posts: 4981
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
I'm curious. With all the AGDQ drawings now possible to do in a real DS, was the current (and previous) TAS ever console verified?