Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Nice job! Replaced the file and added your name.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
-- feos, 2023
-- addresses
local addr_base = 0xD000
local addr_mode = 0xD04B
local addr_cam1 = 0xF700
local addr_cam3 = 0xFDB8
local addr_cam4 = 0xF616
local addr_time = 0xFE22
-- offsets
local offs_flags = 1
local offs_posX = 0x8
local offs_posY = 0xC
-- constants
local SCREEN_W = 320
local SCREEN_H = 224
local LEVEL_H = 2047
local SCROLLRATE = 16
local FREEZE_SIZE = 16
local MAX_FRAMES = 100
-- aliases
local rb = mainmemory.readbyte
local rs16 = mainmemory.read_s16_be
local rs32 = mainmemory.read_s32_be
local ru32 = mainmemory.read_u32_be
local ws16 = mainmemory.write_s16_be
local ws32 = mainmemory.write_s32_be
local wu32 = mainmemory.write_u32_be
-- buffers
local freezebuffer = {}
local memorystate
gui.defaultPixelFont("gens")
local function CamHack()
client.invisibleemulation(false)
local x = rs16(addr_base + offs_posX) -- character x position
local y = rs16(addr_base + offs_posY) -- character y position
local origx = rs16(addr_cam1) -- initial camera x position
local origy = rs16(addr_cam1 + 4) -- initial camera y position
local xx = math.max(0, x - SCREEN_W / 2) -- desired camera x position
local yy = y - SCREEN_H / 2 -- desired camera y position
local flags = rb(addr_base + offs_flags)
local timer = rs32(addr_time)
local deltaX = SCROLLRATE
-- if flags && 0x80 ~= 0
if bit.band(flags, 0x80) ~= 0
or rb(0xF7CD) ~= 0
or (x - origx <= SCREEN_W
and (y - origy <= 240
-- going downward through level-wraps
or (y + LEVEL_H - origy <= SCREEN_H and origy >= LEVEL_H - SCREEN_H)
-- going upward through level-wraps
or (origy < 0 and (y >= LEVEL_H + origy or y <= origy + SCREEN_H)))
or rb(addr_mode) == 0)
then return end
-- set the camera no more than 640 pixels distant
if math.abs(xx - origx) > SCREEN_W * 2 then
origx = math.max(0, xx - SCREEN_W * 2)
end
-- and always above target, because Sonic doesn't like externally forced upward scrolling
if origy > yy then
origy = yy - SCREEN_H * 2
else
origy = math.max(yy - SCREEN_H * 2, origy)
end
if xx < origx then
deltaX = -deltaX
end
local numframes = 1 + math.floor(math.max(
math.abs(xx - origx) / SCROLLRATE,
math.abs(yy - origy) / SCROLLRATE))
if numframes > MAX_FRAMES then
numframes = MAX_FRAMES
end
memorystate = memorysavestate.savecorestate()
for i = 1, FREEZE_SIZE do
freezebuffer[i] = ru32(addr_base + i*4)
end
client.invisibleemulation(true)
for i = 0, MAX_FRAMES * 2 do
if i > numframes then break end
if origy < -SCROLLRATE then origy = -SCROLLRATE end
ws16(addr_cam1, origx)
ws16(addr_cam1 + 4, origy)
ws32(addr_cam3, origx)
ws32(addr_cam4, origy)
ws32(addr_cam4 + 4, origx)
ws32(addr_time, timer)
for i = 1, FREEZE_SIZE do
wu32(addr_base + i*4, freezebuffer[i])
end
client.seekframe(emu.framecount() + 1)
if numframes < MAX_FRAMES and emu.islagged() then
numframes = numframes + 1
else
-- the game doesn't like being forced to scroll up
if yy > origy then
origy = origy + math.min(SCROLLRATE, yy - origy)
end
if xx ~= origx then
if math.abs(xx - origx) <= SCROLLRATE then
origx = xx
else
origx = origx + deltaX
end
end
end
end
--[[--
gui.pixelText(10, 100, string.format(
" pos: %4d x %4d\n"..
"orig: %4d | %4d x %4d | %4d\n"..
" cam: %4d %4d %4d\n"..
" xx: %4d | %4d yy: %4d | %4d",
x, y,
origx, rs16(addr_cam1),
origy, rs16(addr_cam1+4),
rs32(addr_cam3), rs32(addr_cam4), rs32(addr_cam4+4),
xx, math.max(0, x - SCREEN_W / 2),
yy, y - SCREEN_H / 2))
--]]--
client.invisibleemulation(false)
client.seekframe(emu.framecount() + 1)
client.invisibleemulation(true)
memorysavestate.loadcorestate(memorystate)
memorysavestate.removestate(memorystate)
--client.invisibleemulation(false)
end
while true do
CamHack()
emu.frameadvance()
gui.clearGraphics()
end
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Looks like it doesn't store hashsums?
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
In the rules we have this:
It looks similar to arbitrarily setting OS time during your PC game movie. The OS allows to set it freely and directly, so as long as you don't change the game it's legitimate.
With Spectrum and C64, BASIC was the way to use the system, so setting system variables that way also sounds good.
If the game doesn't break from your system tweaks, even the current rules already allow it.
And even if it breaks, as long as the system explicitly exposes such a setting to the user, it also feels okay to at least have it as a separate branch. We've had this with Flash games that would work very differently if you resize the window arbitrarily, which was entirely possible with original Adobe Flash Player, but looked like a one-off exception, so it was unclear how to handle it officially. Now I'm getting the bigger picture.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Makes sense.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
I didn't mean to state that it would be rejected. I researched things that looked interesting, to have a discussion about them, so whatever happens next is agreed about. I asked other judges and they didn't feel it was worth rejecting. Because in the end we don't know if the overall RNG aligns in a way that makes the possible improvement really huge.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
I linked the post describing evolution of the staff culture. We didn't initially come here already approaching things the way we do currently. We've been regular members of the community, interested in contributing in different ways, sometimes getting into arguments, sometimes agreeing on things. Over time we figured out different aspects of this hobby better, and worked on things the old way, while trying to push other things forward.
There have been LOTS AND LOTS of arguments among staff members, to the point of them willing to quit over something unfair, and other staff members would try to figure those problems out, eventually leading to some sort of a resolution and a compromise. When you do it for years, you end up understanding how to prevent new fights or at least how to de-escalate them.
Part of the reason why staff members "think alike" on a quick glance, is because they discuss things A LOT, and their posts either present results of some prior brainstorming, or they encourage new brainstorming. It's funny if one thinks that regular users don't participate in those. The thing is, regular users who are interested in operating on that level simply end up joining the team at some point.
And yeah, when you lead a community of geeks, it's silly to expect that people with power but without agreeable points will go away with ignoring such a community. Regular users will nitpick things to death if they don't agree with you, regardless of whether you are a regular user or an admin. So, to work with such a community and not make it fall apart, one needs to understand things from actual experience, and to be able to word things with accuracy and politeness. Which is what we've been learning here for all the years we've been here.
OtakuTAS wrote:
I would put "putting in a controversial opinion about TASVideos and winning", especially as somebody newer or not "in" with the group, into the same category as "winning the lottery".
Is this based on experience with our site? It's true that it looked that way in the past, the common notion was that tasvideos looked absurdly "elitist". But in actual discussion we still try to work with facts and logic, not whether someone belongs or not.
OtakuTAS wrote:
Now, if a large number of people were polled and agreed, that's basic decision-making and majority rules, but there isn't a very big pool of people that chime in and most who do have individual relationships with each other as well as positions of power.
If several parties all rely on facts and logic, there is some room for a compromise, especially if they agree to acknowledge their respective differences and feelings, and to resolve them in a future proof way. I don't see how "individual relationships" affect this.
OtakuTAS wrote:
It gets to a point where decisions being made behind the scenes are basically like asking your grandma if you're right, she's always going to say yes, regardless of how right or wrong you are.
What was the last decision we made behind the scenes and then repeatedly ignored community feedback? And who's our grandma?
OtakuTAS wrote:
I cite the Nach thing again cautiously (I'm not well-versed in the lore enough to know about too many other similar situations), where it seemed like it was causing a lot of problems to be constantly debating, wherein the solution was deemed to just eliminate the resistance/Nach. Our government is always arguing, but removing an entire half to stop the arguing would undoubtedly create more problems (and dangerous ones) than it would solve. Removes the checks and balances but also any good ideas that get thrown out with the bad.
Debating has always been a part of the (volunteer) job. Haven't I linked the subforum where we debate things even more now?
The problem is when somebody is barely possible to reach every time to actually have a debate (no interest in what's going on and how things are evolving), and when acknowledging facts happens ever more rarely. Did we mention all the problems with sticking with all the old technology? Did we need to post all the negative facts about someone, making sure everybody hates them? Also can it really be that one person who stopped participating in talks was the only one who could check and balance us, and the rest of the community can't? Finally what makes you think Nach's contribution to all the site operation was one half (or comparable to that), and the rest of the staff did the other half?
OtakuTAS wrote:
feos wrote:
It also so happens that the people who wanted the policies to be xxxxx, are the head of the staff team now
This kind of sums up my point, and can vaguely be applied to anything hence the edit... "So let it be written; so let it be done."
What edit?
OtakuTAS wrote:
If two people who adamantly wanted to the site to be hot green colored got elected to admin positions, there is a high likelihood the site would be hot green colored
First, why is it about only "two people" in your point? Second, did the community hate it, prior and after?
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Dacicus: Processing...
feos: Sorry for the delay, but now this movie can't be published, because an improvement has been submitted, and this record has been beaten. So I have to reject it in favor of the new movie.
Mothrayas wrote:
If the site publishes a movie knowing that a faster movie already exists (and is on the submission queue), it's violating its own rule.
It's unfortunate whenever this happens to an already-accepted submission, but this is not the first time it has happened. No movie is confirmed for publication until it has reached the movie publication list. Accepted movies can still be rejected in light of new evidence.
Nobody liked how it happened back then, but legacy policies of the site (we've been a part of them) have evolved since 2019. These days we try to be content creator focused, and to judge things according to what makes sense to us, the community.
https://tasvideos.org/Forum/Subforum/3https://tasvideos.org/MovieRules/History
It also so happens that the people who wanted the policies to be less strict and more humane, are the head of the staff team now, so yeah if we can reach a consensus about some change, we implement it. The main problem is that we need actual problematic situations to occur to start a talk about it, because otherwise everyone is busy with regular site duties (and real life).
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
The movie must be complete
Your submission must beat the game, or reach the most suitable endpoint the game allows. Single-level or otherwise incomplete movies are not allowed. Examples of suitable endpoints are:
A definitive ending, such as a credits sequence.
A kill screen, assuming it is impossible to complete even when TASed.
If there's no clear ending, end after all unique content (enemies, level layouts, game mechanics, etc.) is exhausted.
Alternately, after completing all unique content, you may end when the in-game difficulty (enemy speed, AI, etc.) stops increasing.
Alternately, in games with a score counter, you may end when you reach the maximum score the game allows.
I've been wondering if a rejection should still happen if a movie only completes one loop. Will that help us get a more complete movie anytime soon, if ever? What about accepting one loop and then as usual obsoleting it with a more complete version if somebody makes it later?
Example: #5994: klmz's NES Circus Charlie in 03:21.35
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
EDIT: feos is currently working on a script in order to beat this game faster.
Uh, no? You'll have to test picking up coins at different times manually. The only thing I noticed is fceux taseditor doesn't want to keep markers intact if you load branches, so it would be easier to do this in hawk, marking frames when coins spawn and using branches for different routing.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
ViGadeomes wrote:
Here is the same movie in GBA mode for Console Verification, no change in the inputs, same rerecord count, Author noted : User movie #638128316808155798.
To late to modify the actual submission.
We can still do it if the author agrees and especially if the numbers are the same.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
And here's a movie that reaches the score of 22 60 frames sooner: User movie #638128340520305920
Turns out dependency between coin grab and next coin spawn is non-linear, and sometimes it's more optimal to grab it later, and the next one spawns sooner. Hard to tell how this affects the whole movie, but having to test a few more of the same button presses for every coin sounds easy, just a bit time consuming.
If we blindly extrapolate this to the whole movie duration we get 00:20.77 seconds of potential improvement, and for the overall required score we get 00:45.32 seconds.
Of course it's impossible to know if in practice actual time saved will be more or less that that. But what we know for sure is you can't just fall on every coin ASAP and be sure the next one spawns optimally. There's a bit more room for manipulation. And in a game as basic as this (you just move left and right), it's fair to expect a bit more attention to details.
Also since you can manipulate the coin's X position and you have 9 lives, it would be worth checking if you can manipulate the last few coins to align so you could collect them without input while losing all the lives.
EDIT:
In theory it should also be possible to manipulate coin spawns a few coins ahead if it takes too long even after all the tries on the immediately previous one. But that makes it a much bigger project.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Welcome, and have fun!
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
And you've missed 2 coins, at frames 12744 and 45324. Was it intentional/unavoidable?
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Darkman425 wrote:
It's still experimental right now but will be in BizHawk 2.9 when that releases to try it out. Since it would be in BizHawk that means there are a number of tutorials for using BizHawk that can help.
It's actually been considered ready per consensus, and it will become acceptable after 2.9 is released. So yeah we recommend it now, and it may obsolete other ways to tas with MAME.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
I got the rom from there
(headered)
MD5: 2F33019F51624CA94FD952A8B2673DD2
SHA-1: 5E85705B07AA931F729D6B7A85D4CD4B686F5E2F
(headerless)
SHA1:D2F6BCC7B3337715E3DFBA672F11895B7E9BD0FE
MD5:1229D51277BE89D2F9C8BA2024021D0E
but it doesn't sync and the movie has a different rom hash (b30b07cf2dd1e812143d636be4fe7143).
EDIT:
The right one is here https://www.romhacking.net/homebrew/96/
EDIT:
Ah it's also here https://github.com/xram64/falling-nes/blob/master/assets/falling.zip
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Is this safe to judge or are further improvements being worked on?
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Не ну это без шансов вообще. Ты поглянь на это https://tasvideos.org/Subs-List
3-5 сабмишенов каждый день, а судей как всегда 2,5. Ревьюеры хотя бы есть теперь, а то был бы кромешный ад. Возможно теперь 500 пробегов в очереди это наш новый стандарт и продыху не будет уже вовеки веков. А может когда-то мы начнем снова успевать.
Шли чо есть.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
It was Tedious As Shit but I improved it. Saved 60 frames in that place with lots of enemies, which I just despawned, and then lost half of it on the last key due to bad enemy spawns.
User movie #638122681516700063 I mean I already replaced it.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
Ctrl+F5.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
In-Game Codes: In-game codes that add gameplay are allowed for a separate branch, as long as such codes are used optimally. Codes that modify or disable in-game mechanics are not allowed, unless they unlock an in-game item or a skill that does that.
Individual game modes (level sets, episodes, etc.), including those unlocked using in-game codes, are also acceptable as separate branches. These can also include different playable characters if their gameplay is significantly different.
For games that have a second quest or loop, you are allowed to play only the first quest. The second quest is only required to be included if gameplay is significantly different.
If a game's second quest is just a harder difficulty mode, it is allowed by itself.
In-game codes that access harder difficulties and/or bonus content, including cosmetic improvements, are allowed for all branches.
This movie uses an in-game code to access the hardest difficulty loop of the game. To me, that difficulty loop doesn't look like a separate game, so I'm leaning towards obsoleting [4431] PCE China Warrior by EZGames69 in 12:03.53 because boss fights are now much faster.
Link to video
The rule about second quest being the hardest difficulty mode may sound unclear in what "by itself" is referring to, but the original idea was allowing it without the first loop in the same movie. However there's no mention of whether it's allowed as a separate branch. It is automatically allowed if it looks like a separate game, but if it's only slightly different, it should compete in the same categories with other difficulty modes IMO.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
MarioAtWork wrote:
I've been considering TAS-ing a Genesis game called Gravity Pig however, the game crashes on certain emulators (BizHawk included) when entering the final boss fight. It works on regular hardware and some emulators but I'm unsure whether a run that cannot technically beat the full game can be accepted or if it is acceptable it'd end on the final level instead.
The movie must be complete
Your submission must beat the game, or reach the most suitable endpoint the game allows. Single-level or otherwise incomplete movies are not allowed.
You'll need to wait for emulation to improve.
Does it also fail in newest Genesis+GX?
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
InputEvelution wrote:
Okay. So to clarify, if a movie can only be further optimised via RNG manipulation, does this mean improvements can only be submitted on the same emulator version as the existing publication?
Obsoletion
Any time saved or lost from version differences and/or emulation accuracy is considered unavoidable, and is discounted.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Experienced Forum User, Published Author, Site Admin, Skilled player
(1238)
Joined: 4/17/2010
Posts: 11287
Location: RU
I don't think there's anything to solve here. We don't expect emulation to be perfect when we accept something, we just assume it to be decently true to the real world, barring non-determinism. If some movie was made on a less accurate version, we consider whatever state of emulation was there good enough, as long as the movie uses it decently optimally. If emulation changes later on, and the RNG aligns differently, it's unfair to consider a new movie better or worse if the RNG dependent part is the only thing that's different - it's just a resync.
If you find a gameplay improvement, it's better to implement it in the same old version to make it obvious the difference is not just in emulation, but in optimality too. Otherwise we face cases like #7183: Jigwally & CasualPokePlayer's GB Boxxle in 4:58:58.88.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.