Posts for feos


1 2
16 17 18
439 440
Experienced Forum User, Published Author, Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
If the same tricks work in both versions, I think having the more complete one is enough (especially if optimal input in the same levels is identical). If there are differences, having both versions means someone will be interested in TASing the shorter one to see how much quicker it gets, and therefore it makes sense to have it. But if you can automatically know how long the quicker one is by simply subtracting a constant value, or copying inputs and then cutting out one level, I'm not sure what value it has, and for whom.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
It existed on real hardware.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
OtakuTAS wrote:
IMO do it feos' way, and skip through the cutscene super slow so people can read the text. Otherwise it doesn't look like the game finishes.
There's no "feos' way", and I didn't mean to say that the dialog has to be slowed down. Skipping through the dialog is fine, because the cutscene containing that dialog is clearly already there, and it's all we need.
OtakuTAS wrote:
Okay then screw the rest, the whole "safe save" thing is useless
If some people need it for something, it's not useless. It's just not something TASVideos would require.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Spikestuff wrote:
The other nitpick is this and the RTA speedruns you're referencing select the shortest mission instead of the last mission where you are in the Ministry of Magic for a face off Voldemort's goons (which is also selectable as a note). So to me, this is just ending at some random ass mission instead of the last one.
I agree with this.
Movie Rules wrote:
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.
This game doesn't have a credits sequence, but it has a cutscene that completes the plot. If that's a much of an ending as we can get, it's what we should get. After all the goal of a movie is not to create a working save file, but to trigger the most reasonable ending. Sure some movies glitch the game so hard that including the entire ending becomes a problem, but they still have at least a part of it.
So I wanted to replace the submission with User movie #638138088715807082, but I compared it to the RTA record that includes that level, and some fights in that human run are quicker than in this submission. What could be the reason?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Rerecording emulators have been tracking rerecord numbers (how many times you loaded a movie savestate) for a long time, and they've become a standard stat for TASVideos publications. There were only a few exceptions:
  • Movies where a brute-force kinda tool was used (usually called a bot), for which we used to exclude botted rerecords from the main count
  • Movies where the real rerecord count is not known, and we set it to 0, which the site parses as "unknown"
  • Movies where the rerecord count doesn't reflect the real picture, but was left as is
  • Movies where the rerecord count was set to some arbitrary value
Over the years, some questions about how rerecords are tracked and used on the site have accumulated. In an ideal scenario, no rerecords are lost or bloated, and a well done movie usually has a rerecord count that is bigger than the frame count. Which usually makes people who love statistics happy, because they can appreciate the work that went into the movie. But...
  • Sometimes low rerecord count is used as a reason to question the movie, without actually looking into its optimality, and sometimes authors are even asked questions about why the number is so low.
  • Rerecords cannot reflect research and development behind the scenes
  • Some people work with several movies at once, and their rerecords don't even reflect their actual TAS work (unless they explicitly sum everything up)
  • Regardless of research and development, rerecords can be set to an arbitrary number, which makes them a completely meaningless stat in those cases
  • Even legitimately high rerecord counts won't tell a lot about actual movie quality, because to understand it one has to understand the underlying challenge, which in turn requires facing the same problems as the author did. And that may be impossible because the ground work has already been done, or if the author is good at writing, it can be described in the submission text
So we started wondering if it still makes a whole lot of sense to keep tracking rerecords on the site the way we've been doing it all along, or maybe something is worth updating. For example I wouldn't want low rerecord count to be used as an argument against the movie, or even authors anticipating it and explaining in advance why it's low. Movie quality should be assessed by actual gameplay. On the other hand, making rerecord display optional on the site (or even removing it entirely) would imply more dev work, and maybe some people actually want to show this stat about their movie. So I'm asking for opinions, and I got an idea myself. What if we hide rerecords on the site and don't use it in publications, unless the author has provided it in the submission description?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Fortranm wrote:
https://tasvideos.org/Movies-initstate Currently this tag is used for [2487] NES Cheetahmen II by adelikat in 01:11.68 only. Should this be expanded to include all movies that utilize uninitialized SRAM initial states too?
Sounds sane to include them, but why is it SRAM specifically and not all initialized memory? Also that movie not just uses uninitialized initial state but specifically sets it via emulator settings, so it should only apply if a movie uses initial state that is not default in the emulator. A lot of games forget to initialize memory and some startup states can break games, so emulator authors had to choose which specific startup states are the most compatible with real games, and if they were dedicated enough, they also researched what used to happen on actual consoles. But as long as you don't deviate from the default, you're a part of the fair standardized competition, even if it's not 100% accurate.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Alyosha wrote:
'Movies by Genre' -> 'Unofficial game' is empty. (I guess it's 'Homebrew' now but there is no link for that.)
https://github.com/TASVideos/tasvideos/issues/1532
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
NinjaCocktail, given how recent the latest improvement is, are you still working on this game, or is it save to judge?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Updated. Should I delay the judgment in case more improvements are 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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Thanks, it synced with that slot 3 state.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
I can't get this run to sync even with the provided savestate. It also desyncs during the fight after frame 42000. Here's the list of MD5 file hashes contained in my neogeo.zip, which I have no idea which database I got it from, and all other ones I try FBA outright refuses use:
e255264d85d5765013b1b2fa8109dd53  "000-lo.lo"
ff453315c5ddacc0f3bf4ca994c13adc  "asia-s3.rom"
5b2d6f653ba4cf36e7fe237e4acb2f50  "japan-j3.bin"
b11751ad42879c461d64ad2b7b2b0129  "neo-epo.bin"
1ec68104095d4b7236e8c18c77ea501b  "neo-po.bin"
3089166a89d9735d038e8e7da36e5bc2  "neodebug.bin"
aa2b5d0eae4158ffc0d7d63481c7830b  "sfix.sfix"
eba274d931f630efbbf723c19fcd8744  "sfix.sfx"
0ebb67f617a0da8209f0e736811bfafa  "sm1.sm1"
629e6beaa277e039eae2f96ff237f8e6  "sp-1v1_3db8c.bin"
0396470c1ed8b1a7d5cce754924246bb  "sp-45.sp1"
a7b798c9cafb1aba49090bca34e1d4ec  "sp-e.sp1"
a51ad226535ff862c1f54120e4298f79  "sp-j2.sp1"
908b5a0026b2b10f2a7c01ccd98a1236  "sp-s.sp1"
2968f59f44bf328639aa79391aeeeab4  "sp-s2.sp1"
b60fb8ea07e8a64772ab717afba3706d  "sp-u2.sp1"
a80fffe27bf8e615171ce728e43d2f6c  "sp1.jipan.1024"
5b9079a81d84137d8b6f221659d777c5  "uni-bios.rom"
6293999bbc32e594aa0ae1da2113dc4d  "uni-bios_1_0.rom"
cafa6c274b271c769b8246c8f87473a1  "uni-bios_1_1.rom"
206fb0d9b5d01a0375d2d3ecab2401b1  "uni-bios_1_2.rom"
6b2f2d8507be4d1feb14fdfbab0bf22e  "uni-bios_1_2o.rom"
856d122ee5fc473d7d1dd99dbf42c25b  "uni-bios_1_3.rom"
1b9724d1b9d41a1a9b733007b2033fb5  "uni-bios_2_0.rom"
0377c32f69a28f23d9281c448aafb391  "uni-bios_2_1.rom"
5b9079a81d84137d8b6f221659d777c5  "uni-bios_2_2.rom"
74c4bb6a945f7284350036b40f0a0d9d  "uni-bios_2_3.rom"
d9f0ed2e0eeab813c9692d7e8d037fd8  "uni-bios_2_3o.rom"
727b731c1f4bd643094574ebaa3814b4  "uni-bios_3_0.rom"
dd77a172853200bd99c986a48dde914d  "uni-bios_3_1.rom"
b60fb8ea07e8a64772ab717afba3706d  "usa_2slt.bin"
530fb9761957e59aeb47f2e8782df288  "vs-bios.rom"
Dark Noob, do you have the same files in neogeo.zip? You can check by unzipping it into a folder and dragging that folder onto this script.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
WarHippy wrote:
Frame 437265 or so seems to be the most likely candidate.
Indeed that generated the right SaveRAM file! Thanks. I uploaded the trimmed movie that don't need to be paused in the middle: User movie #638143288521042757.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
I replayed the verification movie, but the SaveRAM file it generated is different from the one included in the movie, and leads to a desync if I replace the one in the submission with it. CRC32: E546CFA4 MD5: B57F070D883A84F7327A81C0E0F550B2 SHA-1: 774E7637CF727C0453A0370CFB3EABE90396AB8B Desync: The submission as is syncs fine and has this SaveRAM: CRC32: 72DDB7E7 MD5: CE060C1415F9C4A72376B3B155DFBC6E SHA-1: D3F1C53E0D81A97D29045261599AA68C2AAD7571 Sync: WarHippy, how exactly did you create the movie then?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Awesome, it finally happened! I liked it as a fan of the game, even though it's not the most sophisticated action. Yes vote.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Alyosha wrote:
Yes it does matter, as this isn't the only movie that suffers from emulation issues, so i would like to know if that is now sufficient reason to make an official resync as was done here, or if it still isn't. Thanks for the other answers.
With the new site the options we now have to work with resyncs improved greatly. I don't remember all that was said in this thread, but technically we can replace published movies, and we can add extra movies to them. I'd say the latter is less intrusive, and doesn't need to care about bureaucracy and stats that may be different in the resync. Encodes can very well be done from the resync alone.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Alyosha wrote:
Also did Heisanevilgenius agree to the change in language?
Yes (as Weird Video Games in the youtube comments).
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
TheFunPolice wrote:
For the issue that I was going to post about originally, the Yoshi's Island 100% TAS is on the Newcomer Corner, and possible one of the first suggested TASes to watch for new people. However, the Youtube video for the encode has been privated and cannot be watched. https://www.youtube.com/watch?v=Jp7Z2zdu9Zw Given the age of the encode it is possible that the video was auto-privated by Youtube, if the video was originally unlisted. This video on the TASVideosChannel appears to also be an encode of this TAS, and could be switched into the submission link. https://www.youtube.com/watch?v=6HCdPsfoXmU
Done.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
NemoRuby wrote:
You're cutting the frame too early before escape.
What do you mean?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
feos wrote:
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
Implemented https://tasvideos.org/Wiki/PageHistory?path=MovieRules&fromRevision=57&toRevision=58
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Noxxa wrote:
Memory wrote:
Unofficial Games could use being split into hacks/modifications, custom levels, homebrew, and bootlegs/unlicensed. I don't know if this is the best way to split but we can discuss it.
I would split up Unofficial Games as follows: • Hacks - defined as custom (external) modifications of a game, involving modification of the main executable or ROM file by external tools. ◦ E.g.: Super Demo World (Super Mario World) • Custom level set - for games where level files can be imported (through internal or external means) while the executable or game code itself remains untouched. ◦ E.g.: Kama Sutra (Doom 2) • Prototype - for (unofficially released/leaked) prototype versions of games that either were officially released later or cancelled. ◦ E.g.: Wildwaters Extreme Kayak • Unlicensed games - games that were physically/commercially released bypassing the platform's official publisher's platform or supervision (if there is one). This includes bootleg/pirated games. ◦ E.g.: Zook Hero Z • Homebrew - games that were developed outside of the platform's official publisher's platform, but were either fully or predominantly released online in ROM format, instead of being released commercially. Could also be merged with Unlicensed. ◦ E.g.: Princess Rescue
How does this table look?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Darkman425 wrote:
I think the best way to check is to see the boss flags that are checked. This submission should have all the relevant bits to check: #8040: hellagels & klmz's GBA Castlevania: Aria of Sorrow "Julius mode, all bosses" in 06:13.04
Oh I missed that one! The distinction feels strange. The other submission is "all bosses" even though it doesn't fight all the bosses with flags in memory. This submission is "beat Chaos" even though it also beats all the bosses from the "all bosses" run, and more. The other submission says that definition of all bosses becomes more difficult if Chaos is also beaten, but this run seems to do exactly that and it's fine? And how do we call the actual goals of the 2 runs - this submission becoming "all bosses" and the other one "all bosses except Chaos"? Note: it's not that all the problem with these 2 branches is artificial and comes from label bureaucracy, but it's about the distinction between the 2 goals themselves.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Another question. Isn't this movie within the same goal as [2876] GBA Castlevania: Aria of Sorrow "Julius mode, all bosses" by hellagels, KSeptuple, Pike in 11:52.03? It also beats the same bosses and more, so probably it's a proper improvement?
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
Looks like this particular save first appeared in #1959: zggzdydp's GBA Castlevania - Aria of Sorrow "Julius version" in 04:51.98 and didn't come from any of our submissions, longest of which at the time only got level 22: Thankfully, for #6160: klmz's GBA Castlevania: Aria of Sorrow "Julius mode" in 03:48.14 klmz created a new verification movie based on [3823] GBA Castlevania: Aria of Sorrow "game end glitch" by klmz in 05:07.56, where he erased actual save data so all slots are available for a Julius mode, which still conveniently remains unlocked. But that verification movie doesn't sync on VBA 24 that this run needs (it in turn desyncs on VBA 23.5 that klmz used). So what I did:
  • I replayed User movie #51418800964411271 on VBA 23.5.
  • Let the credits play and then closed the ROM, to make the resulting Castlevania - Aria of Sorrow (U) [!].sav appear in the battery folder.
  • Took that file over to VBA 24 and started a movie From reset (SRAM), which loaded that save anchor from klmz.
  • Stopped recording and opened the movie I got, as well as this submission, in a hex editor.
    • Offset $38 points at the address save anchor data starts from, and offset $3C points to the first address after save data. It starts at address $100 in both files, but it has different size in them.
  • So I cut out all the save data from this submission, and inserted save data from the movie I just created (off of klmz's save data).
  • I also edited offset $3C to point to the same spot as in my movie, because it ends at a different address now.
  • I saved the file and it synced just fine in VBA 24.
So since the Julius mode is absolutely not affected by actual save anchor data (because you don't actually continue from that save), this movie and other ones using this save anchor are okay in terms of legitimacy. But for the sake of clarity and transparency, I'll replace it with klmz's save anchor, because we have a verification move for it. I also uploaded it to the server for future reference and convenience. Please use that save anchor in future Julius mode submissions, like KSeptuple & klmz did in #8041: KSeptuple & klmz's GBA Castlevania: Aria of Sorrow "Julius mode" in 01:38.40.
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 (1236)
Joined: 4/17/2010
Posts: 11269
Location: RU
ViGadeomes wrote:
While judging this movie to understand the glitch
Can you share what you've learned about the glitch so far?
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.
1 2
16 17 18
439 440