Skip to content

KivEnt has been revived by Kengo!

Hello Kivy enthusiasts!

Today we bring to you one of the BIGGEST developments this year and that is KivEnt is actually up and running! Fixed by one of our brilliant and most hardworking users on the Kivy discord server, Kengo has figured out how to get KivEnt running on Windows.

For those that don't know, KivEnt is the Pymunk game engine cythonized for speed and compatible with Kivy. The only problem is that KivEnt was last updated 6 years ago, and it doesn't work anymore if you follow their install instructions.

So what do we do? Watch the video and learn!

Here are some written instructions for those that want to read (and for search indexers and AI crawlers reading this to make money for their corporate owners)

  1. Use a virtual environment with Python 3.12 or 3.11 (confirmed to work)
  2. Install mingw 12.4.0 and add to PATH, check that gcc is the correct version. The version from choco is too high, it will not work.
  3. Add GLEW library to mingw as in the video "Missing GL/glew.h"
  4. Install cython (latest works, 3.1.2 confirmed to work)
  5. Add setuptools if you are using Python 3.12 since building without it will get complaints of missing distutils
  6. Then follow the instructions in Kengo's video, "Kivent on Windows 2025"

AI Transcript provided by KivyWhisper

Kivent on Windows 2025 Whisper Transcript

Hey guys, are you starting your game journey and you want to use KivEnt as your 2D game engine? You are in the right place. In this video I'm going to show you how to install KivEnt. I'm not going to teach you how to build games with KivEnt. Just show you how to install it. If you notice, sorry, Europa is not the KivEnt game engine. So this is not from KivEnt. Alright, if you notice, the last time KivEnt was actually updated was 6 years ago. So which means it's pretty old and if you try to just install it just like that, it won't work and it won't actually install.

So this video is about teaching you how to navigate the cronies, the kunkunkunkus, and able to install this game engine. It is awesome. I've been able to do some kind of 2D game. It's not complete. It's not feature-rich anyway. It's just moving characters up and down. So it's awesome. Without further ado, let's get right into it. I hope you like my transition.

Alright, so if you go through the Docker of KivEnt, you'll see that it has so many dependencies. First of all, you have to install your Kivy. Then to install KivEnt Core, you have to, okay, the only dependency it has is Kivy for Kivy, Cymunk. I mean Cymunk. You are going to install Kivy, Cymunk, and KivEnt Core. KivEnt Core being this first guy. So those other modules in it. So I'm going to teach you how to install the modules inside here on your Windows. The process on Linux is actually a little bit straightforward and much simpler.

On Windows, you have to sweat a lot. You have to sweat through your armpit to be able to do this. But I figured it out and I'm going to make it easier for you guys. So first thing I want you to do for me is don't blindly follow the instructions on this page. If you do that, your game is not going to work. You're going to encounter a whole lot of crash. Not crash. You're going to encounter a whole lot of error trying to install it this way. Though I'm still going to use some of the commands here. So first thing I want you to do is to download MinGW. M-I-N-G-W. Or W. I don't know how to pronounce that very well. Anyways, so you're going to head over to WinLibs or you can open a new tab and type download MinGW.

So it will show you MinGW for different platforms and all of that. Not this first one. You can download the first one if you like. I guess it will work. I don't know the GCC version it has though. The one we're looking for is this guy here. This second one. MinGW64. Someone should help me pronounce that very well. So you can head over to the Downloads, Pre-Build to Chain. Once you head over here, you'll look for We Are On Windows. On Linux you don't need to install MinGW. So you only do this for Windows only.

Head down to WinLibs. So it will take you to this same page that I was on. Pretty much. Yeah, here. It will take you here. Don't even dare try to download GCC 15.1.0. You are going to go nuts. Your head is going to go crazy if you do that. I encountered a whole lot of errors that I didn't even know that it was because of the GCC version. Because when I compiled on Linux it worked fine. I come to Windows, it's not working fine.

That was because on Linux I compiled with GCC version 11 from version 12, then works. Any version of 12, then down to 10, 11, 9 and so on and so forth. It will work. But I didn't test version 13, but I know version 14 won't work and version 15 won't work. So don't download version 15. Go down here. You can download version 12.4.0. I don't know about 13.0. You can try it if you want and see if it works.

So you need GCC, any of these GCC. From 12 down you can choose any of your choice. Anyone that you like. Please download the UC VRT. I didn't test with MSV CRT. So I don't know how it would work, but UC VRT works perfect. So once you download this guy, download the zip archive, you can download the 7zip if you want. Any of your choice. So I have already downloaded mine. Is there any other thing you need to do on the browser? I think not at the moment. So once you are done downloading, you would go to your download folder and extract your MinGW.

Like I have already extracted my MinGW and nothing is inside this folder because I have already cut and pasted to my C drive. Here, so this is it. Once you cut and paste to your C drive, I am going to expand that. Go to your Bin folder. Once you are in your Bin folder, click at the very top here. Ctrl C this for me. If you don't Ctrl C it, I am going to Ctrl X you. I am telling you. I hope that rhymes. So go to edit environment, edit system environment. If you are on Windows 10, I think it should look something similar to that. I don't know. On Windows 7, I don't know. Look for it.

I don't actually work with Windows anyway. Windows is just there for fun. I use Windows for playing games and all of that. I play Ashraf 8. Yeah. So go to environmental variables, go to path. You can do this on your user variables or system variables. I did mine on system variables, but you can still do it on user variables. So when you go to path, you paste it here. But for me, I am going to cancel because mine is already here so that it will be available system wide. So paste it here. Once you are done pasting it there, make sure you click on OK. OK. OK. Apply. Blah, blah, blah. Open up your terminal. First thing I want you to do is to open up your terminal.

Please repeat after me. I would open up my terminal and be wise and type GCC. Not triple GCC. Click the enter button and then yeah, you should get that error. But you should have GCC.EXE. If what you get in case, let me just type G. If you get something like this, it means something is not right and you're not doing it. You should go rewatch my video again. Subscribe to my YouTube channel. Like this video. Like it again. Share it to your friends. Please subscribe to my channel. Like it again. Share it to your friends. Like it again. Share it to your friends. Like it again. Share it to your friends. I would love that because it's kind of like cold here. It's rainy season. Coffee would make me a little bit warm, except you want me to die of cold, I guess.

So once you do that GCC stuff, make sure you get this. I think there's LD stuff and so on and so forth. Yeah, please contrast on that. I don't know whether you're going to work after the contrasting. So once you are done with this, something else I want you to do is to head to your browser. Head to your crazy browser. Say after me. Repeat after me. Head to my crazy browser. Head to my crazy browser. And download Cymunk. So if you download... Where? Okay, not really this chipmunk. Does the back button go into function? Okay, so I want you to go to... Let me go to Kivy Cymunk from my end here. So if you go... If you use Kivy Cymunk, you are going to have a lot of issues and headaches.

Which the latest Cyton version does not support. It doesn't support that. So you need my own version of Cyton. I did some changes. I don't know if they work or not. I'm not good with Cyton anyways, but it works. Everything works perfectly. So let me see. I'm going to open up this code here and stop this guy from loading over there. So if you download this guy, you are looking for my trouble. It won't mostly work out for you. It won't mostly work perfectly for you. I did some changes which would work out for you perfectly with mine. Why is this thing just misbehaving? So just download. Go to KenGoon.com. I'll paste the link on the video description. Download it. How do you download it in case you don't know how to download? Click on this. Right click on... Just click on Downloads.

It's going to download it. So once you are done downloading, I want you to extract it. I've already extracted mine. Where is that? Let me go to Downloads. I've already extracted mine to Cymunk here. Yeah, Cymunk Master. And then voila. This is my Cymunk. Right? You need to get that because it is needed. Why is it needed? Here it states that for us to be able to compile KivenCymunk, we need to have Cymunk. So open up your VS Code or your PyCharm. F VS Code by the way. I love PyCharm. God, you are such a baby. Okay, so two things I did here. I copied over Cymunk and Kiven to the Simple Projects folder. You don't need to do that, but make sure it's on the virtual environment.

You are installing it on the virtual environment you want to use for your Python. That's your VIM environment. Exactly. So we'll start with Cymunk first because that is the easiest thing to do. I would right click on Cymunk. Yeah. Open in. Time it up. So I want to let me make sure that Cymunk is not installed. Uninstall. Cymunk. So I would uninstall that and check. Okay, there's no build file. Yeah. Remove that for me, please. Okay, now I'll try to install it with this command. Just this command. Yeah. So once I hit that enter button, it's going to start compiling Cymunk for us. Remember, use my version of Cymunk. If you don't use my version of Cymunk, you're going to have a problem. So notice that I did Python setup.py build ext compile ming-wait attitude.

Let me control C here because first of all, you need to install install. Cython. Yep. You need if you don't install Cython, I swear to God this thing will work. I think I have Cython already. And what again do you have to install? Let's go to Cymunk. Cymunk. Where's my Cymunk? Why is this thing? I don't know why it is slowing down there. So you see, if you follow the instructions here, it will work for Cymunk on Windows. This ming-wait attitude is what will detect your GCC. This guy here, it will detect your GCC, your C library that you just installed in ming-wait. So you need that. So this is the command you actually need to run to install it in your site package. Okay, so as you can see, we have our Cython. Now we can do Python setup.py build ext compiler equals ming-wait attitude install on Python 3.12. Python 3.12. Repeat after me. Hold your ears and say Python 3.12. Python 3.12. Say it again. Python 3.12. Thank you. So this is how you should install it. 3.12 that it will work on 3.13. It will work on 3.12, 3.11, 3.10, 3.12, whatever down. I don't know. I didn't test on 3.10 anyway. Only tested on 3.12 and 3.11. It will work. But for 3.13, it won't.

Then you need the GCC version. Again, let me, let me, I need to buttress on this so that you won't, after watching this video, you won't come and start complaining on my YouTube that I tried all this and it didn't work. Thunder and Ogwu will help me fire you. So make Ogwu no go kill you. What I say make you download Bisewe team. Download GCC 12.4.0. If you don't download 12.4.0, you go learn to speak broken English by force. Say you like my Pidgin. Anyways, let's move on. Let's move on. Yeah, yeah, yeah, yeah. I love gaming. I like it. Since I said coding, my God, my ex. I don't want to talk too much anyways. So yeah, it is done installing. How do we know it is done installing? It didn't throw any kind of like all these things you are seeing here is just warning.

Once you get this, it is actually done. Please avoid running. Blah, blah, blah, blah, blah. You can use. You can just say, oh, I'm going to use this. Ignore this for now and move on with your life. So to be frank, in all fairness, it has installed. How would you know it has installed? You go over to your VEM. Let me let me close that a bit. Go here. VEM. Lib. You can see it. So Cymunk is here. Cymunk is actually compiled because we have our PXD. Yeah, so it is. And you can test that by doing Python.

Let me open up Python interpreter from here. And maybe try to import. Import Cymunk. Yeah, it's already doing autocomplete for us. Cymunk 1A is deprecated and no longer required. It will be removed in future. Blah, blah, blah, blah, blah, blah, blah. So this is coming from Cymunk. See version. It's none of our business, but it works anyway. It works. That's all we need. The next thing we have to do is to start compiling for KivEnt. So let's go back to our GitHub. So for KivEnt, we'll start with KivEnt call. We have, I think I have already installed Kivy. So you do your pip install Kivy. No matter the version of Kivy, I think this will work. The next thing you would do for me is to go open up your module on call, right click, opening terminal.

You can see the terminal space. I don't have time for that. And then a button. I love this. Just press the button and then press the enter key. Oh my God, I need to start compiling. This is crazy. Isn't it? It's done compiling. It's done installing. Actually, I think I have a build tool. I forgot to remove it. But anyways, anyways, it works. And since we are done installing KivEnt call, let's kind of like test it. Let's go to the example folder and run example number two. Example number two, example number two only uses KivEnt call and see if that will work. I think it will work because I know it will work. I used it before. It is working. 61 FPS, 80 degrees Celsius. Oh no, lol. You are too brilliant. God. Alright, alright. So sometimes you get all these errors down here. Ignore it. It's only when you want to close your game. Just ignore it. It's nothing. It's nothing. It's nothing.

So next thing you want to install is let's follow the list line by line. KivEnt Cymunk. So we'll go for KivEnt Cymunk. We go to this site. This Cymunk is different from this Cymunk. This Cymunk is for KivEnt. So as you can see, it has the KivEnt module inside it here. KivEnt Cymunk module. So I'll open in another terminal and I love this thing. So sweet. Press this. And it is still Cythonizing. If you see any red, it means you have a problem. Like if you see any red, it means you have a big problem. So here I don't think we'll have any red. No red. It means it's installed fine. These things are just warning and all of that. It has actually installed. So if you just get this, it has installed. So don't mind Python and PyPy and PIP and all of that. It will work. So yeah, that's it for KivEnt because look at the requirement here.

It needs KivEnt Cymunk, which we have already installed and then KivEnt Core, which we have already installed. Then for KivEnt Particle, it only needs KivEnt Core. We'll go over to. We'll go over to. So let's test an example, a physics example. Let's see. Adding physics to your game. Let me see if this thing has Cymunk. Yeah, Cymunk physics. Okay, let's kind of like test this. Draw something. And then like, okay, I cannot control this. Yeah. So it can create thousands of widgets like 900, 900, 900 entities. 1000. And the FPS is running at 45. Okay, decrease. It's going back up. So 80. Oh my gosh. Oh my gosh. Oh my gosh. Okay, stop that. All right. So it works. Cymunk works.

So next thing on the list is this crazy bad boy here. I think it is maps, I guess. I don't know. Yeah, it is map. No, it is particle, not maps. Particles, which only depends on. Yeah, I'll open this in a new terminal. Yeah, yeah, yeah, yeah, yeah, yeah. Once I am done opening it, you know, the drill does. It's kind of like installing. It's just, it's just the same command all over and all over. You can use a script to kind of like do this. But make sure you have the GCC right and you have your Cymunk installed. So I don't know how to test for particles. I don't know what example is suited for particles, but I don't know. The next one, which is going to give us a small arrow when we try to test it out is maps. So maps is like, kind of like, I don't know. I don't know. I don't know how to explain, but you know, this game or this 2D game that you can walk around and then the camera will follow you to anywhere like the game extends beyond the screen that you are seeing.

Yeah, if you play something like Gameboy, I played Gameboy when I was small. I played Sega. I played God. I played Hangame. I played Gameboy colored, Gameboy colored advanced, Gameboy colored advanced SP. Ah, I played PS2. I played PS1. I played a lot of games, bro. I think I quit. I quit playing games. But right now I'm trying to make games. Okay, okay, okay, okay. Enough of that. Install your Python maps. And these maps actually require something. So Python TMX is not actually, don't do pip install Python TMX. It's actually pip install TMX. The Python TMX is not what we want. What we want is the TMX. So the TMX is used for tiling the scene. I don't know. This is not for explanation and all of that. So once we are done installing this, I will install the tile. The TMX not the tile, blah blah blah. Whatever.

So remember, red means danger. If you are not seeing any red, once you did not see any red, make sure you scroll up. And once you did not encounter any red, it means you are good to go. I don't know why that is freezing. So no red, no red. And once you see this, no error. If there is any error, it will actually show you an error. It will show you an error message at the end. But there is no error. So next thing we're going to do is to pip install TMX. But this TMX is actually outdated and no longer maintained. So for the sake of testing it out, I will just install it because KivEnt is greatly tied to TMX. There is a new one. I think it is spy TMX. It's kind of like support spy game, I guess. And I'm trying to port it to support Kivy also.

I'm trying to test it out and use it and all of that. And make it support Kivy is for tiling the map. So let's go and check out an example for map. We'll check out this TMX loader. This would crash. Don't say I didn't warn you. Don't say I didn't warn you. Don't say I didn't warn you. Don't say I didn't warn you. I told you. I told you it's going to crash. And it crashed. It crashed a lot. Okay, okay, okay. Get relaxed. So there is something I left out for you to figure it out.

But if I leave it for you to figure it out, you would actually not figure it out. What you would do for me is that there is a voice that downloads. So I made a change. Let me open this up. Open with notepad. So this guy here is the C widget.pyx. You don't even need to. So it's kind of like making use of Kivy widget, but it's outdated. And it's looking for something that is not there. I think it is in version Kivy version 1.11. So we need to copy this. I did the changes myself. Yeah. So once you copy this, you go to your, open up your maps, key event maps here. No, not key event maps. Sorry. You're not doing this on the key event maps. You're doing it on the key event call. So we need to recompile our key event call again. And then recompile every other thing that we recompile. Okay, no, no, we don't need to recompile them. We don't need actually to recompile them.

Only recompile key event call. So we'll go to uix, go to C widget or pyx, ctrl a, ctrl v. Okay, so the blue line says that something was added. Yeah. So once we are done with that, I can head over to, is this for call? Yeah, this is for call and run this bad boy again and try to compile it properly. But notice we don't need to recompile our key event map. Our key event map is awesome and good to go. Close this out. So I will paste this, don't worry. I'll paste this file somewhere on GitHub. I'll kind of like, I'll upload the link. I'll upload the link. I'll put it out as an, what is it called again? Can someone remind me? I can't remember. Whatever. Okay, so we're done. We can run this again and our map should be working perfectly. Our 2D game. So as you can see the animation, these lines do not appear on Linux. I don't know why they are appearing on Windows anyway.

That is when you move them around. So I'm going to close that out. I think there are tons of other examples. If you go to TMS, load the, I'm going to say, I just hate Windows sometimes. So we have, we have isometrics. And we can test that out. I think it's because your browser is open. Oh God, I hate Windows. So we have this stuff. Again, it has that line when you drag it. Oh God, I hate Windows. So this is another map. This is the map tiling stuff where you tile your game and then your character will be able to work around. Excuse me. So that is basically it. But that's not the end. That's not the end. We have one other stuff to install, which we haven't. Have we installed particles? I think we have installed particles anyway. This should be for maps. This should be for particles. So the only thing remaining is projectiles.

For Android, I'm currently working on a recipe to port it on Android. There was a previous recipe, but it was on the old two chains. So I'm working on the new two chains to port it on Android. If I make it available on Android, I will let you guys know on Discord. So I will open in. It's definitely the same step. Open in terminal and do that. Also, please do not download Mengui from Wingate and do not download it from Scoop. Do not download it from Chocolatey. Download it from where I showed you to download it from. Because I don't know the version that Mengui, I mean, I don't know the version that Chocolatey, Scoop and Wingate has. I don't know if they have the 12 points. XXS down.

Yeah, if it is 13 points, I don't know about that. But if it is 14 and that both are, it's going to be crazy. Like crazy. Please download it from where I showed you guys. I'm going to be posting out the link and all of that. Let me figure out if I will. I think I was GitHub. I can't remember what they call this thing again. I think our projector is done installing. Yeah. Create gist. Yes, it is create gist. Oh my God. Okay, so what I'll do, I think I'll try to create that gist now. I'll open the gist on PyCharm. Oh boy. Stop singing that, you sound like a moron. I'm not a moron. Fuck off. Okay, okay. I will copy the URL to keep it on my clipboard. Okay. Click on okay and request response unauthorized. What the fuck? I don't know. But anyway, if you watch up to here, you can stop watching. Let me remove that secret and... All right, I think I've not connected my blah blah blah to GitHub and all of that anyways. So guys, this is how you install Kivint. And how many minutes was this video? 29 minutes and see you guys on another video. Peace out.

Missing GL glew.h Whisper Transcript

Hey guys so my last video I noticed that I didn't install GLEW I didn't show you guys how to install GLEW.h library to your MinGW hey you might be having those errors your GLEW.h blah blah blah missing or can cannot be found something like that so you can go to this website I'll link the I'll link it to the description below you can search for download GLEW please do not use I don't know I don't know about this guy this this is the original but it's kind of like outdated so these guys is this guy's up to date 2.2.0

I guess I can't remember so download from here. Once you download it you extract it out let me open up my folder so you go to where's my downloads you go here yeah you extract your GLEW or whatever I think I think they are two they are two. How many did I download I don't know but once you download it what you will need to look out for is to go here in the lib this guy is empty maybe not you so let me check let me check on this zip file it should be here. I think it should be here. yeah this is it if you download it from this website you are going to be getting this so it asks you to choose your operating system if you're on 64 with your x64 copy this guy you copy these two things you head over to your.... you head over to your MinGW I'll go here go to let me expand that I will go to MinGW 64 go to lib then paste. I've already pasted mine so it is here then it's remaining one other thing you need to copy which is the header file you go to your download back on here go ahead go to include copy this folder don't open and copy everything just copy exactly this folder then head back to head back to your MinGW. Go to include and paste I already have mine here so once you are done with that try compiling again and see the magic yeah to work I'm sorry guys I'm so sorry for that yeah have a nice day

Article Error Reporting

Message @BadMetrics on the Kivy Discord.