forum

Compare Non-inheritted Timing Sections

posted
Total Posts
5
Topic Starter
blissfulyoshi
How do you compare non-inherited timing sections for consistency between difficulties?

I came across a map today that had about 20 non-inherited timing sections. Mixed in-between were various inherited timing sections, so I couldn't easily compare the text in the .osu files for the various diffs.

Story:
I first tried going to a position right after each non-inherited timing section and check each diff for these timing sections one by one, but this was horribly inefficient. Next, I tried comparing the .osu files, but comparing long decimals and having code for random inherited sections inbetween does not help. After that, I tried opening up the timing panel, going to the timing points tab, and tried to take pictures of the timing points in every diff, except not all the points fit in one pg, and since the screen is not resizeable, I tend up having to take multiple pictures. (I know this would be fairly easy for this scenario, but what if there were more timing sections). Last off, I tried to select all the timing sections and see if I can copy them, but no avail, they do not have a text output when you copy them.

I am just wondering what efficient ways people have used to compare large amounts of timing points?
Lybydose
Two ways:

1: Open the timing tab (not the panel) and move to a section. Go to file ==> open difficulty, then scroll through all of them (don't actually have to open). You can see the if the BPM and offset is the same for every difficulty. Repeat for the next section and so on.

2: Delete all inherited sections in every difficulty, then compare the [TimingPoints] section of each .osu file using a text comparing utility.

2.5: You can do 2 without actually deleting stuff or using a text comparing program. Red timing sections are easy to spot. The first number is the offset, the 2nd number is time between beats (or something - it should be the same for same BPMs). If it's negative, it's inherited. Every other number is irrelevant to timing. It still might be worth deleting all inherited sections if there are a lot though.
Derekku
I've tried all the methods listed above in the past. When the list of uninherited sections fits in the f6 window, I take a snapshot with puush of each difficulty's sections and compare them since it's pretty quick and easy. However, for a map with a large amount or uninherited sections, I use ddifference. Copy the .osu files outside of the map folder (e.g. the desktop), open each one and delete everything but the uninherited timing sections, save, and then use ddifference between files. Yes, it's slow and tedious, but I suppose it's the fastest alternative to the aforementioned methods. (I do something similar when rechecking beatmaps so that I can see exact changes and make sure that nothing was incorrectly changed. It gets a bit messy though, since ddifference sorts by alphanumeric, and hitobjects start with xy coordinates rather than millisecond values... Someone could easily code an application that works directly with .osu files, but I digress :p) Anyway, things would be awesome if more functionality was added to AIMod to solve issues like these. ;p

EDIT: ffffffffff ninja'd by Lyby
Topic Starter
blissfulyoshi
Thanks for the help you 2.

I guess I will try out Lyby's second method and ddifference. Those are probably my best bet, until AIMod gets improved........

/me drops link here (viewtopic.php?f=4&t=44535)
/me runs

Edit: For those wondering how to use Derek's method of comparing notes, here is basically the workflow
Clean the txt file of anything besides the playable elements-> compare the text files with dDifference -> save the output files -> import to excel-> sort the generated column by the 3rd column to align all the elements by offset ->have fun.
mm201
Next build has copying & pasting of timing sections so this should be much easier. Go to the Timing Points tab, copy into a Notepad. Repeat this for each difficulty. Check that the first 2 columns are the same in each.
Please sign in to reply.

New reply