I'm learning C; primarily for computer usage, although I would love to figure out CE development. I figured that a good way to progress my skills, as always with hobbyist programmers, is to make a game. However, I love Sorcery's sprites too much (especially LD Studios' great main character sprite that I have yet to give a name), so I can't just make a new game in a new genre. I have to stick to my roots and create a port! I plan to make this version another fully-fledged port of the CSE original.

It's built in C using SDL. SDL can also combine with OpenGL for all of you OpenGL beasts, although I'm not gonna be using that for this project. Here's the long-awaited screenshot of Sorcery of Uvutu starting to run in C! If you want to see the Github repo, here you go.


(go here for all screenshots)
In this new screenshot, I show off the general flow of the game, the intro text, etc., and provide a full-res, full-speed glimpse into Sorcery!

I've released SoU in Release Candidate form now. You can download it below this text. If you wish to build it, download SorceryOfUvtutuPCbin.zip and run a_makeWindows.bat in the build subfolder. Linux currently compiles as well, but you'll have to run the commands by following the instructions in a_makeLinux.txt, which I explain why in there. Note that the Linux version (at least for me on my Linux VM) currently doesn't work; specifically, it segfaults trying to draw the map. If you can get it to run without crashing, let me know. If you are on Windows and you want to download the .exe without having to build it (especially if you don't have GCC), then download SorceryOfUvutuPC.zip. It'll have all the tools you need to run a pre-built version of Sorcery.

Download the newest release of Sorcery of Uvutu PC here:
https://github.com/123outerme/Sorcery-of-SDL/releases

Engine Checklist: - Done
* Turn rendering from individual PNGs to spritesheet rendering - Done
* Reading from a different line for a different map - Done
* Collision detection - Done
* Make user movement locked during text box stuff - Done
* Menu screen - Done
* Help menu - Done
* Save file - Done
* Random battles - Done
* Map transitions - Done

Game Checklist: - Done
* Make all maps - Done
* Add all enemies - Done
* Add all attacks - Done
* Add all boss quips and NPC text - Done
* Add menus - Done
* Add item pickups - Done
* Add overworld HUD - Done
You sir, are a legend Very Happy

Can't wait to see how this looks when it's done! Keep on with keeping up the good work!
Battlesquid wrote:
You sir, are a legend Very Happy

Can't wait to see how this looks when it's done! Keep on with keeping up the good work!

Thanks! I'm glad you like the look of it. I'm doing my best, I just hope I don't get caught up with any big issues, since I'm still learning C. Although, who of you that know C can consider yourself "not learning C"? Razz It's looking to be really smooth, though, since I'm reusing all of Sorcery CSE's assets including maps and tileset.

Here's a new screenshot, so maybe you'll like this one too:
[/quote]
Wow, I can see the difference Razz

Nevertheless looks great! I remember I was disappointed because I couldn't play this on my CE, but porting to PC is a great compromise!
But does it CE? Laughing

Nice work dood!
TheLastMillennial wrote:
123outerme wrote:
[big image]
Wow, I can see the difference Razz

Nevertheless looks great! I remember I was disappointed because I couldn't play this on my CE, but porting to PC is a great compromise!

xMarminq_ wrote:
But does it CE? 0x5

Nice work dood!

Thanks! I think with tweaks, it could run on CE. For one, I'd have to figure out all the CE screen drawing stuff, and I'd have downscale the graphics back down to the CSE tileset's resolution (obviously -- 48*48 sprites would be huge on CE). But thankfully I love to make things super modular, so everything like coordinates are tile-based instead of screen-coord based, making things way easier. The only issue that I'd probably have is saving the data into an AppVar, unless the CE C library has something to work with AppVars.
I've done a lot more work on Sorcery PC, including doing the overworld menu and Stats sub-menu, so here that is:


(go here for all screenshots)
I also show off loading a save file, and the new font I'm using to avoid legal issues with TI. This font is a very slightly modified version of one found here. It's a very retro font, and the closest one I could find to the TI-84+'s font without doing too much research.
I've done a lot more work and it's looking really good so far, if I do say so myself. It's taken me quite a while, but I have a lot of the engine code already done! Just random battles need to be implemented, and the game engine will be done, pretty much. Here's a new screenshot:

I finally show you guys the collision I did. I also showed off the custom text input routine, basic items menu, and a little more. I also implemented NPCs in houses this build, but totally forgot to show it off.
No updates on custom keymapping, which is still in the conceptual phase, or being able to run my game without Code::Blocks, which is still in the I-don't-even-know-where-to-begin phase but I do have battles to show off Wink


Here, I also show off NPCs in houses (which I added last update, but forgot to show off), my new take on the name entry screen, and more! I'm really excited to almost be entirely done with the whole engine! Except you can't use upgrade points yet, fight bosses, or acquire items yet, but that'll be easy to do.

Aside from all the gameplay work, I was thinking about maybe redoing all of the "story" in Sorcery (across all platforms) to something that actually fits the title. As I was thinking, I realized that the title had not a whole lot to do with the game. Sure, you can be a sorcerer if you use magic attacks, but it's not something that's forced. Sure, you can say that the World 8 Boss kinda uses a magic attack (if he uses the attack I remember thinking about giving him), but there's nothing about Sorcery in Sorcery of Uvutu. I wanted to get a little feedback from the community, since this would be a really great opportunity to solidify the narrative and stop joking to myself "Sorcery has a plot?" So, in essence, I wanted to know who thinks I should rewrite/redo/actually write the story, since it's been on my mind.
Yet again, I haven't worked on configurable key bindings, or world-sized maps. However, I've added chest and boss display (only chest shown off here). As well, bosses properly trigger battles.


I also show off the innkeeper, who actually does heal, and another battle.
I'm going back to school tomorrow, so I figured I'd do more work on this project, seeing as I'll probably be working less on Sorcery PC. I figured I'd knock out some features that were looming over my head for quite a while. I got (almost) full item functionality programmed in! Seeing as I'll be more busy, I figured I would make another screenshot to show off these things before I either forgot about what changed or lost steam entirely. All that's left to do now is a few tweaks, adding in the teleport stone drops and functionality, and then NPC and boss text!


Yes, I know the dialog box that pops up here doesn't specify the item. That will be fixed whenever I get around to it, but it's getting later and later and I don't want to oversleep on the first day.
123outerme wrote:
I'm going back to school tomorrow, so I figured I'd do more work on this project, seeing as I'll probably be working less on Sorcery PC. I figured I'd knock out some features that were looming over my head for quite a while. I got (almost) full item functionality programmed in! Seeing as I'll be more busy, I figured I would make another screenshot to show off these things before I either forgot about what changed or lost steam entirely. All that's left to do now is a few tweaks, adding in the teleport stone drops and functionality, and then NPC and boss text!


Yes, I know the dialog box that pops up here doesn't specify the item. That will be fixed whenever I get around to it, but it's getting later and later and I don't want to oversleep on the first day.
I love the progress on the PC port! I've played the CSE version and it was spectacular.

If you want, I can port this to ICE for the CE...
CalcMeister wrote:
I love the progress on the PC port! I've played the CSE version and it was spectacular.

If you want, I can port this to ICE for the CE...

Glad to hear you're liking what I'm doing! I would love to see a CE port, as well! Let me know in a PM what kind of resources you'll need (I have map .pngs, the tileset and documentation, various save file and variable documentation, enemy data algorithms, etc.) and I can send it all to you.

Edit: No screenshot update yet, as most things left don't impact anything visual. I have, however, reworked some code to allow the move upgrader to finally work, and have also finally allowed custom keymapping! The keymapping will be saved in the savefile, but if anyone thinks I should make a config file I'll definitely do that and add some nice other options as well! The default is the layout I've been using, WASD, Space to act as 2nd (aka an Interact button), and Esc to act as Mode (aka the Menu button). However, once I'm done, you'll be able to go to a config menu to change the keymapping to anything you like! Have fun with different keymappings and tune your layout to your desires! Or, at least you better, or I'm gonna ask for some money in exchange for the couple of hours I pondered and worked on it Wink
123outerme, this looks lovely! I think this is a great idea and great way to learn C. It's really cool to see your games coming to new platforms, congrats!
chickendude wrote:
123outerme, this looks lovely! I think this is a great idea and great way to learn C. It's really cool to see your games coming to new platforms, congrats!

Thanks! I think it's a great way to learn C, as well as batch and bash scripting!

I recently wrote all these scripts to make program development easier. I use these scripts for a lot, from zipping up the release files into a distributable package to updating my local project files by pushing/pulling to/from my GitHub, to building on Windows (or on Linux if you run the build.sh file). I don't know why I didn't set it up earlier, but I can tell it's going to help me a lot, especially when editing code online.
And strangely, I find myself nearing the end of development for this game sooner than I anticipated. I've added many things that so far it has lacked, including all NPC text, boss quips before your battle, move upgrading, and more. With the completion of the code that makes your teleport Stone, an essential item for game progress, function correctly, it appears it can be played fully, just like the CSE original. However, I could test every single possible interaction to confirm this, or I could do it the more fun way, both for you and for I, and release it into public beta!
Public beta will come soon; just as soon as I confirm that the game builds and runs perfectly fine on machines other than my own. If you'd like to do that (and I'll put a Razz right here when I've found my person -> Razz), please PM me or highlight me on IRC. All you need, as far as I know, is my distributed package, and a computer. I have custom build scripts for both Windows and Linux (and Mac too, pretty sure the Linux script will work on Mac).

And now, for a screenshot! However, this is different than a normal screenshot, because it's a video, not a gif! Every tool I've used to convert mp4s to gifs either reduce the quality pretty bad, or lower the framerate to ~10 FPS. I decided that neither were acceptable to showing off a soon-to-be-finished product, so I just uploaded the mp4 straight to Youtube!
Thanks to my testers, I've confirmed that SoU can successfully build and run on Windows 10, Windows 7, and Linux (Ubuntu at least). Let me know if your version works or doesn't work. So far, I know that when I was testing it on my Linux VM, I got a segfault after creating a new game, after passing the intro text. I've figured out it was something about drawing tiles, but it looked to be a fault of the SDL library on Linux, not of my own fault. Let me know if you can help me with debugging and getting around this issue. If you want to see the full synopsis of this problem, you can find it as a question I asked on StackOverflow here. Otherwise, the game should totally work. However, I've limited your progression to just the first world; all 8 worlds will come with the official v1.0 release!

Download SorceryOfUvutuPCbin.zip (build it yourself): https://www.dropbox.com/s/jrc71i7xhus6miv/SorceryOfUvutuPCbin.zip?dl=0
Download SorceryOfUvutuPC.zip (prebuilt): https://www.dropbox.com/s/vs58md8g4fdj49x/SorceryOfUvutuPC.zip?dl=0
Everything seems to work for me! (Win 10) Of course I haven't played the CSE version so I don't know if there are any subtle differences.
I look forward to the 1.0 release! Very Happy
Perhaps, because this is PC, you could have a option for smooth movement and transitions?

But make it optional, for those (like myself) who want the graphics to be just like on-calc.

Edit: also, can you compile it for mac Evil or Very Mad
TheLastMillennial wrote:
Everything seems to work for me! (Win 10) Of course I haven't played the CSE version so I don't know if there are any subtle differences.
I look forward to the 1.0 release! Very Happy


Awesome, glad to hear! I ported as close as I could to the CSE version, but to be sure I'll have to run both alongside each other to make sure damage, exp, etc. are functioning properly. 1.0 release definitely coming soon!

_iPhoenix_ wrote:
Perhaps, because this is PC, you could have a option for smooth movement and transitions?

But make it optional, for those (like myself) who want the graphics to be just like on-calc.

Edit: also, can you compile it for mac Evil or Very Mad

Honestly, I'm not sure if I could add sub-tile movement, since so much of the engine is based on per-tile stuff (like drawing, coordinates, etc), but smooth transitions is a possibility. However, I'm gonna add that later, since I just need to focus on the core design functioning first.
I'm pretty sure it can compile for Mac, as long as you have GCC installed. You can follow the Linux build instructions (modifying any of the commands in between the && as you need to) and try to run it. However, I'm not sure if it has the same segmentation fault error as Linux, so let me know if it works!
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 2
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement