Would you participate in the Skyrim CE Alpha?
 75%  [ 12 ]
 0%  [ 0 ]
 25%  [ 4 ]
Total Votes : 16

Hey everybody.

Alright, so this post is long overdue, and I feel like I have really left you all in the dark about where this project went and where it is going. Yes, Skyrim CE is still in development, and yes, I will be releasing an Alpha soon. The amount of time I'd have to work on it while at university (and my own ability to procrastinate) was simply underestimated when I began work ~7 months ago (a, was it really that long ago; I'm a true Indie developer now!).

At any rate, it's time I give you all a well-deserved progress update and new project timeline.

Questions People Have Totally Asked Me
    How much code have you written? Uhhhhh, some. Very little, actually. I haven't gotten around to converting all my pseudocode and flow diagrams and pre-documentation into an actual engine yet. I should, though. I need to. I'll keep you posted.

    Well, how much of the map have you designed? Here is the tentative world map structure:

    where each colored square is a region, and each region is divided in 9 primary sectors (along with a few extra ones like buildings, should they exist). I've begun designing Riverwood in a Minecraft world (state-of-the-art, I know), and I have a decent Python script to convert a world "drawing" into the tilemap. Screenshots are due in a few weeks.

    Alright, what about NPCs? The NPC data format is essentially complete: I've jampacked as much data as I can into the list structure, allowing for NPC to have inventory, full dialogue, and combat stats. I also have a half-working Python Tkinter UI for designing them, but I haven't worked on it in a while. NPCs will be able to move around the world as well (though they don't very often), and change their dialogue based on completed quests. And yes, all of your favorite NPCs will be present.

    Speaking of which, quests? The data format is also essentially complete for quests. There will be many, but I can't code all of them. The good ones, though.

    How will save slots work? There won't be. The player will have one save at a time, unless they can hook a USB to their calculator for extra storage. I mean, c'mon, what were you expecting?

    Mods? Yes? Yes, mods. I have the system set up to handle 625 mods total. You pick a two-letter code that hasn't already been taken, and BAM, new mod; the game itself is technically a mod (with code SK). Mods can add new NPCs, regions, and texture maps to the game, and NPCs can move between mods at will. A sort of "override" system is in the works as well, whereby if you design a NPC in your mod that has the same ID as an NPC in a different mod, the load order will make that NPC's dialogue and such override the other one to allow mods to build upon the base game.

    You were talking about cutscenes in the IRC a few days ago. How are those? Cutscenes will be interpreted like regular regions, except the player can't move or do anything. They will be the same quality as the rest of the game (which I guess is a good thing?). For example (ignore the lack of passengers):

    Hey you, you're finally awake...
    Dragon encounters and a few other specific spots will be treated as cutscenes. I've only got 10 picture variables after all, and I've already set one for the menu and one for the world map...

    Oh yeah, dragon battling! How will I fight a dragon? Turn-based. Yeah, not as cool, I know, but it's the best I can do. My work on the battling engine is quite literally zero, but it's looking to be a combination of Pokemon and Undertale; those NPCs stats I mentioned earlier will be a factor, as well as a bit of random chance. Dragons will probably have a unique battle mode since their, well, dragons.

And now, the quickfire round!
    Sprinting? No.
    Horses? No.
    Sneaking? Yes.
    Quest markers? Yes.
    Load screens? *sigh* Yes...
    Followers? Yes.
    Perks? Yes.
    Standing stones? Yes.
    DLC? When I get around to it. But tentatively, yes.
    Achievements? Yes. Custom ones too.
    Multiplayer support? No. Link cables suck.
    Any Assembly at all? Yes. Memory management would be impossible without it. Shoutout to Mateo for his help with it so far, in fact.

I think that is everything I have to report right now. Sorry that I don't have much "tangible" stuff to show-off, but since everything is reliant on the game engine I haven't written yet...you can see the problem. But thanks to everyone for keeping interest in the project and helping me remember that this project isn't just for me. A lot of you want to see it complete, and I haven't done a good job so far of fulfilling that promise.
Shoutout to Mateo, PT_, TheLastMillennial, JWinslow, LogicalJoe, and a handful of others for their support so far.

Finals are almost over. An Alpha by the end of the summer, I promise.
Until then, wish me luck. I've got a long road still ahead of me.

This looks much better than I ever expected it to be, hehe
Hello again.

Here's another progress update for Skyrim CE; I unfortunately don't have any new fancy screenshots this time, since I've worked almost exclusively on actual engine code. Not as glamorous, sure, but a task which I've put off for too long.

I'd estimate that the engine is something like 20% complete; here's a handy chart to show how, which I'll update as I go:

Engine Progress
    Game Menu/UI: In Progress
    Region Loading: Complete
    Region Drawing: Complete
    Player Movement: In Progress
    NPC Loading: Complete
    NPC Drawing: Complete
    NPC Movement: In Progress
    Dialogue: In Progress
    Text Display/Wrapping: In Progress
    Battles: Not Started
    Inventories: In Progress
    Quests: In Progress
    Cutscenes: In Progress
    Magic/Shouts: Not Started
    Dungeon Generation: In Progress
    Perks/Leveling: In Progress
    Load Screens/Travel: In Progress
    Lockpicking: Complete
    Thievery/Crime: Not Started
    Followers: Not Started
    Mod Loading: In Progress

Wow; listing all that really shows how much more I have left to finish. But, it also shows my progress! That surely says something.

Beyond the engine itself, I have done some major reworking to the data format, specifically to do with graphics and text storage.
For graphics, I'm keeping it simple with a string of all the valid text characters + colors, each of which is stored via its two-digit location in the string + list. Locations 90-99 were reserved for "Custom Graphics Sets", whereby a region would have a specific set of ten new characters + colors to use for those locations. It allowed, for example, specific details in a Dwemer ruin that would be wasteful anywhere else.

This method, however, is still limited and a bit memory-intensive since the mod has to allocate some space to specify the custom character string. Solution? Make an enormous string containing literally every available character on the calculator (or at least the ones I could nab via SC or TI-Connect). The Custom Graphics Set are now just lists that correspond to which characters to pull from the master string, and they're not limited to just 90-99 anymore. So yeah, more characters.

For text storage, I also kept it simple by saving text as two-digit locations in a string. I realized though that text will actually take up the bulk of NPC data (due to dialogue and dialogue responses, as inventories are simply item ID's + item counts), so cutting down on its size is ideal.

My solution? Well, since I'm not using all 99 available characters in the text string, I might as well fill those with word/2 or 3 letter substitutions. Saving "that", a common enough word, as "th" + "at" (4 digits instead of 8 ) should be pretty effective, while saving "Skyrim" or "elf" as their own substitutions should cut down a bunch for particular situations (say, Ulfric Stormcloak's dialogue). I was able to add more of these substitutions by removing capital letters altogether and adding in a "capitalization space"; capital letters never occur mid-word (I've never heard of Jarl McCormick), so I don't need them as their own characters. There is the occasional hyphenated word like Herma-Mora, but I can work around that.

Will this save a lot of space in the long run? I have no idea. The letter substitutions should work, since I based them off the most common English words and cut digit counts in half. The word substitutions should also help, though I have no idea if they will help more than additional letter substitutions would. Only time and testing will tell.

Alright, that's what I've got this time around. I really want to get you guys screenshots, as well as finish up my NPC designer Python scripts (mostly to save me a lot of hassle). I'm vacationing at the beginning of July, so expect my next post a bit after that. Thanks to calcuon for reminding me to post this one; any comments or suggestions will be immensely appreciated.
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 1
» 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