Fun fact there's ways to manually calculate the square root of a value(or at least estimate it) only using the basic add, subtract, mutiply divide operators like the Heron's method. So should be possible to do in minecraft. But great video and great work. It's amazing that you were able to get this all running in a datapack and running smoothly performance wise.
Yea there are also some exploits you can use to make minecraft calculate the square root for you. Those are expensive data commands tho. The whole point however, was that growth doesnt matter if you only want to compare distances
Distance to first items (what MK8 uses) should be pretty easy too. Just need the highest spline score, subtract the player's score and use that for the item probabilities
I found some hidden secrets on the map THE SNACK THAT SMILES BACK 2000 100 -1000 Unfinished Grazzy volcano 1500 100 -200 Test Track (with a kart) 0 100 1250 Mario Stadium 1000 100 1000 Baby Park 2000 100 2000 Yoshi Circuit -1000 100 -1000 Coconut Mall -3000 100 -3000 Bowser's Castle -4800 100 -4800 Rainbow Road -7000 100 -7000
This is the best mario kart datapack I've seen! It actually has Lakitu!! I want this to be a full project with many maps so I can play it with my family!
Amazing video, even better datapack, youre just built different man 😅 Also Minecraft recently added a predicate for WASD Sneak and Sprint inputs so you can spice up the controls instead of relying on the current method
You should make the characters actually replace the player model by making the players invisible, then add a 14th character for the “Mii” that lets you play as your own player with your own skin
@@GameJam230 Oh it doesnt alter your skin, it's just the karts. However I have all these heads modeled out, but we just felt like its funnier if you can actually see the other players skin
I put the world on a server because it was too laggy in singleplayer, but when I start a solo race, Im not put on the kart so I just have to run. I didn't test with multiple players but I assume its the same Also, the karts were invisible or not there when I used paper (im now using vanilla)
Why didn't you do the track percentage distance detection (6:35) like regular Mario Kart did by having specific points across the track that all have to be hit before you can go to the next lap?
This is literally just how a spline system works (well the implementation is actually just half a spline system, but you get the point). Mariokart works similar to that too. So what about it is naive in your opinion?
Spline system by itself is nothing more than a spline system. And that's fine. But it's not very performant for this use. In fact, the more splines you have on the map, the worse the performance. Just think about it. You have a racetrack and a path. This means that you only need to drive in one direction on a certain part of the track. (Well, that's pretty logical, everybody knows that.) What's naive in my opinion is. It's flawed in the way you already know. Remember what Skip Jopes did? Well, that is why it is flawed and naive. You could say it's an edge case. But to me it is clearly an oversight. Oh yeah, and one more thing. I don't know how this kind of scripting works in Minecraft. But I have looked into and I know that you can do some really complex things with it. So I would say it's possible to make that system better and fix a few bugs here and there. If you didn't already. ( It's also a "Framework barrier". Because I am using general game engine. So it's the way we think about stuff and implementations. I hope my comment wasn't that harsh )
@Golanhast Well it's written in vanilla with minecraft commands, so yea the implementation is really basic, but I brainstormed a few ideas and I think I can confidently say that this was the most suitable here, as the output is easily deterministic and doesn't have to deal with A LOT of edgecases. You are right that the algorithms time complexity scales with the amount of points on the track, but again this is how an algorithm like that simply works. Normally you'd want to apply a bezier on this path, but the process of determining the position stays the same. If you have another idea on how to solve that I'm open to hearing it To the skip that Jopes did: - The implementation of lakitu was a quick thing. It would be better to make these certain checkpoints you have to reach rather than plainly using the spline points, but I had to make a lot for this pack and in our testing before it didn't cause to many issues that way - I have to admit that a 30% tolerance value is a bit to much - The debug mode was on and Jopes really searched a while for this one
Well. I am not only have an idea, but I have two of them. With variations. But they cannot be done with a 30% tolerance rate you have right now due to how these ideas must be implemented. I am also a bit.. Bad at explaining things in text. But I will write down a short recap: 1. Your particular system can be improved. ( And that doesn't requite bezier curves as this is optional. ) ( Plus additional variations ) 2. Entire new system based not on one spline, but on collection of oriented bounding boxes. ( Plus additional variations ).
@Golanhast 1. Ok so what improvements do you have in mind? 2. You have to consider that the system doesn't only need to work, it also needs to be easy to setup. For example Minecraft doesn't offer a way to simply define a bounding box by default. There are the dx, dy, dz selectors, but these don't work with rotations. Doing the math yourself is possible but would require more commands than the current implementation and we do have to keep the number of executed commands at a limit. Btw yes your comment was harsh lol
@@ltzAlex At the moment no 1.20.5 cooked all datapacks, but Im working on a thing that wi eventually make my datapacks more future proof, so I have plans on updating all of them at once at some point
So funktioniert das leider nicht. Aber ich kann die Spline punkte als Lakitu positionen deaktivieren. Solltest du ein paar stellen auf der map gefunden haben kannst du mir ja mal die map auf Discord schicken und die Stellen mit irgendeinem besonderen Block markieren. Oder du versuchst es einfach zu beschreiben wie du willst
I... think thats possible? I dont know why youd want to do that because datapacks are usually plug and play for any World you want to have them in but I think you can put the data folder from the datapack and the assets folder from a resourcepack into a zip file and rename that zip file to .jar to have minecraft load it... I've never done that before tho
Great vid! I tried downloading and using the datapack but absolutely nothing worked because I couldn't even get into the world!! Please fix it!!! The save file does work with modern versions, but the /function command has been changed, and it will always crash whenever it's loaded in 1.20.4
You know, it's weird because you're not the first person to tell me this, but there are also many people who got no issues with the map (including me), so its hard to tell what it is
@@Craiy I did find that you used some Optifine aspects in the resourcepack, but not much other than the emission aspect. I tried loading it with a fresh world in Optifine, but the same thing still happened with the exit code: -1073740791
@@Craiy I did see that you used some aspects of Optifine in the resourcepack, but not much other than the emission aspect. I tried loading it with Optifine (with a fresh save from the download), and it ended up crashing again, but this time it had the exit code: - 1073740791
@@_lunartemis Actually track builder would be a really cool idea. Rn it still does require a bit of setup by hand to fully integrate this into the map, but might wanna do a second episode on this, where I could potentially add that
I don't mess with mods very often, but my son REAllY wants this map and that new Breath of the Wild minecraft map from Grazzy i think. Can anyone explain to me or link a video of how to get in on Minecraft??
You can get this map on my website: craiy.net/datapack/mariokart There is a little installation guide below. Its really easy to install. Just make sure your son is using the correct version of Minecraft which is Java 1.20.4 for this one. As for Grazzys Breath of the Wild map: He has the download to his map in the description of his video. You can find it here: th-cam.com/video/lmdl2Wu7PO0/w-d-xo.html
I found a bug. when playing alone to check if it worked, the game was unable to track where i was and therefore both made lakitu bring me to the start line every time but also made it impossible to finish the race. no offense, just dont know where to report bugs. if someone tells me where i will eventually report it there and delete this.
@@MarcVisuals08x omg... I literally totally forgot about mah boy when making the characters. I remember having one last character left and being like... which char should I make? Never thought about yoshi for some reason tho (I ended up making koopa)
The datapack turned out incredible, this project would’ve been so boring without your contributions!
Does it work For bedrock? ಠ_ಠ
Unless he made it for bedrock, no
@@Shadowtime2449 oh… that’s why it isn’t working 😭
Jopes is really good at bowsers castle
ikr
@@Craiy don’t forget about rainbow road, specifically the first section, also is there a way to make custom tracks in this data pack?
@@RishiAggarwal-z5m Not yet but we eventually do a part 2 where track builder could be a thing ^^
@@Craiy yay!
YOOOO banger video! I especially liked the animations you had for explaining the math. Very well made!
The funny thing is that the mastercycle and carts would be 100000000* easier in recent snapshots because they have input detection easily
@@Lenbot7 Yes thats why I included the "might change in the future node", we could use spacebar for drifting now
@@Craiy tbh that would be INSANELY COOL
14:28 missed opportunity to call it MineKart
@@titanium9945 Lol I remember we were joking about that title with SmallAnt, because it just sounds like... exciting
Fun fact there's ways to manually calculate the square root of a value(or at least estimate it) only using the basic add, subtract, mutiply divide operators like the Heron's method. So should be possible to do in minecraft. But great video and great work. It's amazing that you were able to get this all running in a datapack and running smoothly performance wise.
Yea there are also some exploits you can use to make minecraft calculate the square root for you. Those are expensive data commands tho. The whole point however, was that growth doesnt matter if you only want to compare distances
I love the blue shell it's my favorite item thank you for adding it to Minecraft
@@thecodejar You are my favorite item Joris 😉
Distance to first items (what MK8 uses) should be pretty easy too. Just need the highest spline score, subtract the player's score and use that for the item probabilities
PS: This would make comebacks easier too
Ohhh interesting. Yea I'll think about changing that ^^
And also included lap number.
I found some hidden secrets on the map
THE SNACK THAT SMILES BACK 2000 100 -1000
Unfinished Grazzy volcano 1500 100 -200
Test Track (with a kart) 0 100 1250
Mario Stadium 1000 100 1000
Baby Park 2000 100 2000
Yoshi Circuit -1000 100 -1000
Coconut Mall -3000 100 -3000
Bowser's Castle -4800 100 -4800
Rainbow Road -7000 100 -7000
Riiichtig geil
This is the best mario kart datapack I've seen! It actually has Lakitu!! I want this to be a full project with many maps so I can play it with my family!
Amazing video, even better datapack, youre just built different man 😅
Also Minecraft recently added a predicate for WASD Sneak and Sprint inputs so you can spice up the controls instead of relying on the current method
W
REALLY GOOD VIDEO!!! ON PAR WITH LIKE FUNDY AND MISTICAT FR
Yooo thats a huge compliment in my book
No fr you deserve so much more attention this is heat
Starkes Video Bro. Freue mich auf paar Runden Mario Kart mit dir!
@@JaxzyPoker Let's fucking go
Great Datapack
Very impressive data pack! Now I really want to continue my Mario Party project.
Wenn ich sage, unglaublichste Datapack Coder bist aller Zeiten, dann meine ich das so. Danke für jedes Deiner Datapacks!
@@libertacrescent3190 Mega sweet! Danke und immer gerne :)
You should make the characters actually replace the player model by making the players invisible, then add a 14th character for the “Mii” that lets you play as your own player with your own skin
@@GameJam230 Oh it doesnt alter your skin, it's just the karts. However I have all these heads modeled out, but we just felt like its funnier if you can actually see the other players skin
@@Craiy I know, that’s what I’m saying, it SHOULD replace the player models, but then just give the option to use your own skin too.
@@GameJam230 oh sorry my adhd brain only read the second half of your message lol
@@Craiy no problem 😂. That’s my brain too
Imagine making such good content, it being shown to millions of people and still having 5k subs, you deserver so much more! Pls continue on your path
This project is incredible!
Nice to see you here ^^
Someone I believe has already done this. It was really good.
I put the world on a server because it was too laggy in singleplayer, but when I start a solo race, Im not put on the kart so I just have to run. I didn't test with multiple players but I assume its the same
Also, the karts were invisible or not there when I used paper (im now using vanilla)
This is incredibly cool!
3:18 was that a failboat reference 🦅
Sehr geiles Video wieder, habs noch nicht gesehen aber sieht schon richtig spannend aus!
Oops, I wrote it in german😅
@@DartWizard8601 yoo i am German too
Why didn't you do the track percentage distance detection (6:35) like regular Mario Kart did by having specific points across the track that all have to be hit before you can go to the next lap?
I actually didnt look up how mariokart does any of this, so yea I just looked for a quick solution here
@@Craiy it worked, and may be more accurate, but I feel like this would have been easier. Great job all the same
So cool!!! :D
@@Zeplington Thanks man 😁
FINALLY THE GOAT DROPPED
Under 1 hour gang
Bro cooked so hard with this
19:06 my TH-cam randomly crashed here so it looked you just left the video on a cliffhanger
Exactly as planned
Great videooooo!
Alternativer Titel: Mariokart 9 (Leaked Gameplay)
@DerShadow 🤫 Nicht so laut sonst kommen die Nintendo Ninjas
5:55 - Oh. I see nooby and naive programming.
This is literally just how a spline system works (well the implementation is actually just half a spline system, but you get the point). Mariokart works similar to that too. So what about it is naive in your opinion?
Spline system by itself is nothing more than a spline system. And that's fine. But it's not very performant for this use. In fact, the more splines you have on the map, the worse the performance. Just think about it. You have a racetrack and a path. This means that you only need to drive in one direction on a certain part of the track. (Well, that's pretty logical, everybody knows that.) What's naive in my opinion is. It's flawed in the way you already know. Remember what Skip Jopes did? Well, that is why it is flawed and naive. You could say it's an edge case. But to me it is clearly an oversight. Oh yeah, and one more thing. I don't know how this kind of scripting works in Minecraft. But I have looked into and I know that you can do some really complex things with it. So I would say it's possible to make that system better and fix a few bugs here and there. If you didn't already. ( It's also a "Framework barrier". Because I am using general game engine. So it's the way we think about stuff and implementations. I hope my comment wasn't that harsh )
@Golanhast Well it's written in vanilla with minecraft commands, so yea the implementation is really basic, but I brainstormed a few ideas and I think I can confidently say that this was the most suitable here, as the output is easily deterministic and doesn't have to deal with A LOT of edgecases. You are right that the algorithms time complexity scales with the amount of points on the track, but again this is how an algorithm like that simply works. Normally you'd want to apply a bezier on this path, but the process of determining the position stays the same. If you have another idea on how to solve that I'm open to hearing it
To the skip that Jopes did:
- The implementation of lakitu was a quick thing. It would be better to make these certain checkpoints you have to reach rather than plainly using the spline points, but I had to make a lot for this pack and in our testing before it didn't cause to many issues that way
- I have to admit that a 30% tolerance value is a bit to much
- The debug mode was on and Jopes really searched a while for this one
Well. I am not only have an idea, but I have two of them. With variations. But they cannot be done with a 30% tolerance rate you have right now due to how these ideas must be implemented. I am also a bit.. Bad at explaining things in text. But I will write down a short recap: 1. Your particular system can be improved. ( And that doesn't requite bezier curves as this is optional. ) ( Plus additional variations ) 2. Entire new system based not on one spline, but on collection of oriented bounding boxes. ( Plus additional variations ).
@Golanhast 1. Ok so what improvements do you have in mind?
2. You have to consider that the system doesn't only need to work, it also needs to be easy to setup. For example Minecraft doesn't offer a way to simply define a bounding box by default. There are the dx, dy, dz selectors, but these don't work with rotations. Doing the math yourself is possible but would require more commands than the current implementation and we do have to keep the number of executed commands at a limit. Btw yes your comment was harsh lol
This is craizy dude! Well done & nice video! New sub incoming!
You're telling me this has only 1K VIEWS?!?!?!?
This is the best thing I've ever seen!!!
Bro please do more videos on this
@@Itspillowpillartikkamasala I think Grazzy and me are both really down to make a follow up episode if people want more
@@Craiy yes please!
Love the datapack man also just wanna make sure ive been using ur datapacks since the vampire one and enderman do they still work up to date?
@@ltzAlex At the moment no 1.20.5 cooked all datapacks, but Im working on a thing that wi eventually make my datapacks more future proof, so I have plans on updating all of them at once at some point
@@Craiy oh okay x) thanks i really really enjoy those two they are my favorites nice work man
What program did you use to create the mushroom sprite at 7:28 ?
Aseprite ^^
I once tried to create a mariokart clone of my own but ended up failing making a system for tracking player progress on the track!
also do it, make them once u are done with the things u want to do more
Where can we get the datapack? C:
L discord soud effect got me 13:52
@@Pigly_Porkchops I KNEW IT
@@Pigly_Porkchops Gotta be honest tho. During editing I often listened to some scenes in the background and I even got myself with it 😅
i have a silly question, but what would you recommend for server settings to have it run smoothly?
Please tell me you added extra delay to the end of the star jingle before it looped, it was so out of sync
Op
Kannst du blöcke erstellen die die lienien überprüfung ausgeschaltet werden kann so das Lakitu die nicht als spawnpoint ansieht?
So funktioniert das leider nicht. Aber ich kann die Spline punkte als Lakitu positionen deaktivieren. Solltest du ein paar stellen auf der map gefunden haben kannst du mir ja mal die map auf Discord schicken und die Stellen mit irgendeinem besonderen Block markieren. Oder du versuchst es einfach zu beschreiben wie du willst
I have a question. When I put it on a server, all the textures aren’t there. How can I fix this?
Hey CRAIY
So wanted to ask, are you able to convert your Data-packs into a .Jar file, so they can be used in Cursed Forge?
I... think thats possible? I dont know why youd want to do that because datapacks are usually plug and play for any World you want to have them in but I think you can put the data folder from the datapack and the assets folder from a resourcepack into a zip file and rename that zip file to .jar to have minecraft load it... I've never done that before tho
Great vid!
I tried downloading and using the datapack but absolutely nothing worked because I couldn't even get into the world!!
Please fix it!!!
The save file does work with modern versions, but the /function command has been changed, and it will always crash whenever it's loaded in 1.20.4
You know, it's weird because you're not the first person to tell me this, but there are also many people who got no issues with the map (including me), so its hard to tell what it is
@@Craiy I did find that you used some Optifine aspects in the resourcepack, but not much other than the emission aspect. I tried loading it with a fresh world in Optifine, but the same thing still happened with the exit code: -1073740791
@@Craiy I did see that you used some aspects of Optifine in the resourcepack, but not much other than the emission aspect. I tried loading it with Optifine (with a fresh save from the download), and it ended up crashing again, but this time it had the exit code: - 1073740791
can you update the portal gun datapack
can you dodge a blue shell with a mushroom?
@@luminousherbs Thats not a thing in mariokart is it?
@@Craiy If you time it right you can use a mushroom to boost out of a blue shell explosion. It can be done in mk8 (and mkwii I think)
@@Craiyit is a thing, a timed mushroom dodges a blue shell
hi craiy, i have a question, how i can make the zelda mods compatibles?
Thats unfortunately not to easy due to the recent changes
What about the resourse pack it doesent work when i use it?
Minecraft Version?
Are you gonna release this datapack so we can make our own Mario Kart tracks? Also make a tutorial for us
@@_lunartemis Actually track builder would be a really cool idea. Rn it still does require a bit of setup by hand to fully integrate this into the map, but might wanna do a second episode on this, where I could potentially add that
@@Craiy could be cool.
im just really good at rainbow road
VERY GOOD, but you forgot abt the revolving items, tht make the game annoyingly fun
Oops never mind
Hello
Hello
Whtt happen to zelda totk
Things got inbetween
Nice Video but you adressed Totk 2 in the Video soooo will it come
Yes... the totk abilities are still something I want to do but everything just got massively delayed by things that got inbetween
1 word “ultra shortcut”
Yea that one is fixed ^^
Gotta admit tho that 30% might have been to big of a range in the first place
Does this allow us to make our own tracks?
@@OfficialSpee It still requires some manual setup for some aspects, but yea I might add that
Für den Algorithmus
The game works normally but the textures arent there
I don't mess with mods very often, but my son REAllY wants this map and that new Breath of the Wild minecraft map from Grazzy i think. Can anyone explain to me or link a video of how to get in on Minecraft??
You can get this map on my website:
craiy.net/datapack/mariokart
There is a little installation guide below. Its really easy to install. Just make sure your son is using the correct version of Minecraft which is Java 1.20.4 for this one.
As for Grazzys Breath of the Wild map: He has the download to his map in the description of his video. You can find it here:
th-cam.com/video/lmdl2Wu7PO0/w-d-xo.html
I found a bug. when playing alone to check if it worked, the game was unable to track where i was and therefore both made lakitu bring me to the start line every time but also made it impossible to finish the race. no offense, just dont know where to report bugs. if someone tells me where i will eventually report it there and delete this.
@@Potato15461 Are you on 1.20.4?
Yes
No yoshi character :(
@@MarcVisuals08x omg... I literally totally forgot about mah boy when making the characters. I remember having one last character left and being like... which char should I make? Never thought about yoshi for some reason tho (I ended up making koopa)
The texture pack doesn't seem to be working...... And yes, I mean texture pack. The data pack works fine.
Am I the only one who is typing /function mariokart:host and it says "Unknown function"?
Sounds like you're on the wrong version. This is 1.20.4 only rn
@@Craiy When I open in 1.20.4 it closes the game, might be my hardware
Ich rieche da einen deutschen Akzent
Lüge ähh ich meine... Lies!