neskol / mailib Goto Github PK
View Code? Open in Web Editor NEWA library for intepreting maimai charts
License: GNU General Public License v2.0
A library for intepreting maimai charts
License: GNU General Public License v2.0
Note timing/chart definition need improvements to make format transferring easier.
Utage notation seemingly not recognised - this includes:
$
turns tap into star (example: 1$,2$,3$
)?
creates slide without tap star (Example: 1?-5[2:1],
)Current error catching system does not report exact detail of where it could be. A better error report system should be introduced.
When changing chart format, chart version is not properly set.
I am getting this error when trying to parse this slide from simai to Ma2_104 using CompileSimai: 1V75V71[4:2]*V35V31[4:2]
Start Key:6
Expected inflection point: SLL for 4 and SLR for 0
Actual: 6
Program cannot proceed because of following error returned:
MaiLib.ParsingException
Simai Parser encountered an error while parsing after bar 21 tick 0 when parsing token V75V71[4:2] in each group "{4}, 1_, V75V71[4:2], V35V31[4:2]":
THE INFLECTION POINT GIVEN IS NOT MATCHING!
Original Stack:
at MaiLib.SimaiParser.SlideOfToken(String token, Int32 bar, Int32 tick, Note slideStart, Double bpm) in C:\Users\Neskol\source\repos\Neskol\MaichartConverter\MaiLib\Parser\Simaiparser.cs:line 437
at MaiLib.SimaiParser.SlideGroupOfToken(List`1 extractedTokens, Int32 bar, Int32 tick, Note startNote, Double bpm) in C:\Users\Neskol\source\repos\Neskol\MaichartConverter\MaiLib\Parser\Simaiparser.cs:line 278
at MaiLib.SimaiParser.NoteOfToken(String token, Int32 bar, Int32 tick, Double bpm) in C:\Users\Neskol\source\repos\Neskol\MaichartConverter\MaiLib\Parser\Simaiparser.cs:line 126
at MaiLib.SimaiParser.ChartOfToken(String[] tokens) in C:\Users\Neskol\source\repos\Neskol\MaichartConverter\MaiLib\Parser\Simaiparser.cs:line 52
at MaiLib.SimaiParser.ChartOfToken(String[] tokens) in C:\Users\Neskol\source\repos\Neskol\MaichartConverter\MaiLib\Parser\Simaiparser.cs:line 95
at MaichartConverter.CompileSimai.Run(String[] remainingArguments) in C:\Users\Neskol\source\repos\Neskol\MaichartConverter\Commands\CompileSimai.cs:line 76
Remove excessive private fields to make this less Java-like
Current MaiLib is partially rely on Enums to manage FESTiVAL features while the legacy features uses string as flags. Need to unify these standards
In simai, placing a hold note without specifying the hold length (i.e. 1h,2h,3h,
) will create a zero length hold note
However this is not currently recognised and incorrectly converts to a regular tap note.
Chart file: https://drive.google.com/drive/folders/1milyC1Xpf1QEPGvl1W8j7UI-63wL6_Mh?usp=sharing
Error:
Executing CompileSimai (Compile assigned simai chart to assigned format):
Destination : out
Difficulty : 5
FileLocation : C:/Users/mbmas/Desktop/customs/Catch The Glory - D-D-Dice vs. siromaru\maidata.txt
Rotate : null
ShiftTick : null
TargetFormat : Ma2_104
Program cannot proceed because of following error returned:
MaiLib.ParsingException
Simai Parser encountered an error while parsing after bar 84 tick 0 when parsing token <4-7-1-4[4:10]b in each group "5_, <4-7-1-4[4:10]b, 4_, -1-7-4>5[4:10]":
The input string '10b' was not in a correct format.
Original Stack:
at System.Number.ThrowFormatException[TChar](ReadOnlySpan`1 value)
at System.Int32.Parse(String s)
at MaiLib.SimaiParser.ExtractConnectingSlides(String token) in C:\Users\mbmas\Desktop\maichartconverter\MaiLib\Parser\Simaiparser.cs:line 834
at MaiLib.SimaiParser.NoteOfToken(String token, Int32 bar, Int32 tick, Double bpm) in C:\Users\mbmas\Desktop\maichartconverter\MaiLib\Parser\Simaiparser.cs:line 124
at MaiLib.SimaiParser.ChartOfToken(String[] tokens) in C:\Users\mbmas\Desktop\maichartconverter\MaiLib\Parser\Simaiparser.cs:line 52
at MaiLib.SimaiParser.ChartOfToken(String[] tokens) in C:\Users\mbmas\Desktop\maichartconverter\MaiLib\Parser\Simaiparser.cs:line 95
at MaichartConverter.CompileSimai.Run(String[] remainingArguments) in C:\Users\mbmas\Desktop\maichartconverter\Commands\CompileSimai.cs:line 84
Need to support Ma2 version 1.04 for reading/composing
The current version of MaiLib is not capable of calculating scores correct. Need to fix in future
def of "^" command:
">", "<", "^" ... Arc shape
Connects the start to the end along the circled judgment line.
If the direction of travel is to the right, use ">". If left, use "<".
If the distance is shorter than half the circle, "^" can be used and thinking of the direction is thus not needed.
it will crash when I write C note in shimai file.
e.g.:
8x/C
if my chart have space in command.
e.g.:
{8}, , 8^6v4b[8:3], ,,, ,,
These issue is from Simaiparser.cs
My coding is not very good. I only can give u some code suggestion, can not fork and pull. Sorry about that.
Due to the difficulty of fixing Simai parser issue, it might be much easier if the whole parser was sent for refactoring.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.