Search the Community
Showing results for tags 'blamite'.
Found 4 results
Hey, everyone! Not much to actually write here, but we've just uploaded a YouTube video going over the current state of the Blamite Game Engine. We plan to create more of these as time goes along and the engine continues to grow and evolve. We can't say how often they'll be produced, but we want to start showing off new features as they get developed. Sometimes they'll just be simpler stuff without too much visual flare, other times it might be something a bit more exciting. This first video was uploaded yesterday and was recorded by yours truly. It's a fairly in-depth one as I was both somewhat sleep-deprived, as well as the video being entirely unscripted. So, if you want to check it out, bundle up, grab some popcorn, and give it a watch.
Hey, everyone! It's been a little bit, and we've got some news to share! Gitlab Migration First off: we've once again migrated the Gitlab, except this time we didn't break LFS data. The new and updated Gitlab can be found at the Gitlab's original URL: https://gitlab.elaztek.com. As a result, if you have any repositories cloned you will need to update the origin push/pull URL's to point to gitlab.elaztek.com instead of newgitlab.elaztek.com. Since all the old data (accounts, repositories, etc.) is still present, no other adjustments should need to be made to those URL's. You may need to log-in again if you use a GUI application for interacting with Git, and if your repositories utilize webhooks those may need to be adjusted as well (though this depends on the hooks themselves typically). The old URL (ironically named https://newgitlab.elaztek.com) has been set to redirect automatically to the new URL. As a sidenote, the Gitlab has not exchanged hands during this migration. Seeing as internally I've mentioned moving things to my own hosting a few times (and I suppose it's possible that such information may have slipped out potentially), I figure its worth mentioning. The main purpose behind this migration is to reduce the sheer number of servers that have been in use by Errite (the studio that hosts Gitlab as well as assists with other server-management-stuffs with Elaztek and CU), as it became more costly than made sense. Blamite Game Engine You didn't think we've been sitting alone doing nothing the past few months, have you? If you did think that - you'd be entirely justified because there's been a lot of that before. But today, we've got some goods to show off. For most of you, it'll be more boring stuff - but while it isn't much on the surface, it's actually a much bigger deal under the hood - and I'll try to make that clear as best as I can. Engine Architecture Changes The game engine has, up until now, been a standalone executable. No libraries or anything crazy like that, just a simple blam.exe and that's it. However, as time went on it became clear that this wasn't gonna work out long-term. The engine's core has to be used outside of just the game - Sapien will need to use it, our UI editing tool that has yet to be named needs to use it, and our planned unified editor for Blamite will of course need to use it as well. So, we had to perform some adjustments to migrate the engine from being a standalone application to a DLL, or Dynamic Link Library. In layman's terms, this means the engine can be utilized by other applications without having to bake the engine's runtime into each and every development tool by hand. We aren't done with that migration, as the migration has revealed a couple real issues - namely that the engine doesn't have a very clean startup and shutdown routine. There's a lot of data that "persists" through restarts erroneously, that was previously given no thought since that data would just be lost on exit. However, this mainly refers to trying to do things like stop/start the engine from those external tools - initial startup works just fine. Documentation Along with this, we've started to build up a documentation website for Blamite. Or, rather, a "Guides" section. We have automated source documentation built via Doxygen, but this is presently kept behind lock and key - as it includes many of the source code files for the engine. What isn't being kept behind lock and key is this new Guides section, which is derived from the Blamite repository's Wiki section. The new documentation is crisp, clean, and much easier to use than Gitlab's built-in Wiki (especially for what we're using it for). Keep in mind - absolutely nothing on these guides should be relied upon for any amount of real guidance at the moment. Since the engine is only in its infancy at the moment, a lot of things are undocumented. What is documented are, in many cases, old feature plans by 16-year-old-me back when I had no real clue how to do anything with a game engine, or even C++ for that matter. You will see a few pages marked with a notice like this: Usually it will contain a message about me harshly criticizing my past self and stating that the page exists for archival purposes only. Most of these pages are kept in the 'Deprecated' category. Other pages are either out of date, incomplete, or in some cases may actually be complete if you're lucky. Don't expect anything too exciting on the guides for a while, though you may periodically get a glimpse under the hood in between announcements. The new guides section can be found at https://hub.elaztek.com/guides/latest. Tags - The backbone of all Blamite content For those of you at all familiar with Halo's game engine, you've surely heard of Tags before. In Bungie's engine, tags are used for the vast majority of all game content. And as of now, Blamite has full support for creating new tags and tag classes. Cache files (.map files) aren't implemented yet, and there are a few other things that need to be accounted for, but the bulk of the engine's tag/tagclass system is functional. Along with that, we've made a couple minor but, in my opinion, very key changes that will prove to be invaluable later on. Each tag file stores the version under which it was created within its file. And while this may not seem like a huge deal, it means that we'll be able to actually know what exact version each tag was built with. This can be used for a number of things, particularly with backwards compatibility. We could either let the engine be aware of all previous tag formats - though this could prove to become very unwieldy, very fast. A more realistic implementation is having Guerilla facilitate tag upgrading. We could even make it so Guerilla can automatically download the appropriate plugin files for that tag and help the user migrate their tags forward. No tag classes have actually been solidified yet. In fact, Guerilla hasn't even been upgraded to be able to handle proper tag files. But it's something that'll be happening sooner rather than later. Screenshots So, I've talked about a number of things in this post - but so far, I've not shown anything in the way of photos. Let's fix that. Below you can find some screenshots of the various engine tools. Each image will have a brief explanation below it. Sapien Guerilla Blamite Engine Unfortunately folks, that's all we've got - for now. Progress is always being made - and while not all of it is worth showing off, be rest assured we're always inching closer to having a fully functional engine on our hands. 3D rendering isn't being worked on yet - but we're very close to being there. Until then, we'll see you all next time.
Hey, everyone! We've been doing some updates, upgrades, and general improvements to the Elaztek website! We've introduced new features as well as enhanced and improved old ones. Overall, the general theme is bringing more parity with CU's forums - with the eventual end goal being that the two forums move in lockstep when it comes to general community features. Moods These have been on Chaotic United's forums for quite some time, but we figured it was high time that they made their way over here. All the moods that are available on CU are available here. Along with that, we've fixed a few minor display issues with several moods (on both Elaztek and CU forums). Nothing too spectacular or out of the ordinary. Hit the smiley face in the top-left of the navbar to set your mood! Awards We've actually had a handful of awards set up for a while. Many of them were unused (and still are), and virtually none of the awards from CU's forums made their way over. Well, since part of CU's relaunch was its new awards setup, we've brought many of those awards over to Elaztek - excluding ones that don't really fit Elaztek. However, we've also disabled many of the (small selection of) old awards - primarily, the category named "Blamite Expertise" and the Contest award "Project: Infinity Mapmaking Contest". These were both disabled because, well, it's gonna be a long time before those awards are going to even be relevant. Blamite is years from being of quality (and likely still at least a couple away from actual, proper gameplay), and Project: Infinity is also quite a ways out as a result. They'll be refined and reimplemented when Project: Infinity and Blamite are complete. Several awards, new and old, are currently pending some new icons. Keep an eye out for those. We won't make an announcement, but you'll see it in a changelog at some point in our Update Notes blog. Profile Changes These are the most minor of the changes (besides the minor fixes and edits in the changelog), but still worth mentioning. The old 'PC Specs' field has been disabled and, in its place, a full category called 'System Information' for you to put all your different PC information. CPU, GPU, Operating System, RAM, and so on - each one has its own respective field. And if we've missed one, we've added another field for other system info. If your PC has some special quirks about it, you can share those details in the 'Other PC Info' field. We've also added a new Profile Step for you to quickly and easily put it all in. Additionally, we've added a few other minor fields for Interests, Discord username, Skype username, and Location. We've also made it where several major fields (Steam, Discord, etc.) show up alongside your forum posts - much like how they do on CU. Wrapping Up We've made a few other smaller changes here and there, but they don't really warrant much mention here. If you want to know all the details, check out the full changelog in the latest Update Notes blog entry linked below. Lastly, if you (or anyone you know) is interested in game design, development, or engine programming, send them our way! We're always looking for new people to introduce to the team - Blamite isn't gonna build itself, y'know. If you wish to join our team, slam the "Join the Team" button below. Alternatively, if you want to learn more about Blamite, click the 'Blamite' link in the navigation bar. We'll bid you farewell for now with a few screenshots from me working on text rendering: Our font system effectively draws text as a series of bitmaps strung together. (we needed a way to draw text independently of dear imgui) After creating a tool called FontExtractor to export our favorite Fixedsys font into these glyph images, it started to come together. The spacing was due to how FontExtractor exported images, leaving lots of blank space in the resulting image files. And then this happened. Uncompressed fonts utilize a fontinfo.xml file to determine how glyph images are drawn (including sizes and such) - here, the glyphs were cropped by FontExtractor but the actual size in the XML file wasn't yet updated to reflect that change. After that was sorted out, we added a WIP font editor dialog to play around with the font properties to get optimal displays. In the future we'd ideally have FontExtractor handle this automatically, but hey - this works for now. The charspacing property determines how much space is left between characters when drawing. Setting it to negative can be used to draw text backwards. Good to know. You can alternatively just make it really high and have some w i d e l y s p a c e d t e x t . But, setting everything properly, the end result is nearly identical to the standard text (as seen in the windows in the screenshots). The text in those windows is handled through an entirely different system, and it cannot be (elegantly) used to just draw text at a point on the screen. The font display with our custom setup isn't perfect, but it's very, very close. Upcoming work includes implementing a proper game tick, doing some reorganizing of the codebase, and then adding the ability to tint/color our text. Following that, we'll start on properly implementing the console. And after that? Who knows? Stay tuned to find out! Also, if you want more stuff like this, let us know - we'd be happy to do development updates (when there's meaningful progress to share). Join the Team Learn about Blamite
Hey, everyone! We have a new project to announce! This one being far more ambitious than any other project we've ever done. That project is the Blamite Game Engine. Now, I know what you guys must be thinking. Over the years we've been announcing project after project, with so far none of them being public. It seems like a joke, like we aren't taking any of it seriously. But this one is different - not because "oh, we're actually working on this one" or anything of the sort. Raven Runner and Project: Infinity have both been worked on since their inception. The thing with Blamite is that it will be the engine for Project: Infinity, as well as all of our games going forward (with the exception of anything that is released before its completion of course). So, why the change? What happened to Unreal Engine? Good question. This decision was made after going back and forth between a custom engine or Unreal. And while, yes, going the Unreal or Unity or any other "ready-to-go" engine would have been a much quicker route, and would at least be something to help us offset the fact that, compared to other projects like Installation 01 or Project: Contingency (two other fan made Halo games, you should go check them out and support them too), it isn't the route we are planning to go. From what has been seen with these teams, they don't seem to have much planning on what comes next for these people. Some of them will probably stick together, but the Installation 01 team themselves have said that they will more or less disperse after that project's time ends. Project: Contingency has not made such statements as far as I'm aware, but it's safe to say that these guys aren't really going in for the long haul necessarily. This isn't necessarily a bad thing really, as some of them will probably get a fair amount of attention by other industry giants and I suspect they won't have much difficulty getting jobs after the fact. Here at Elaztek, we aren't here for a one-hit-wonder. We are here for the long haul. We aren't here to push out one or two games and fade away, we are here to last. This engine isn't going to just be used in one or two games, it's going to be the foundation for all of our games going forward. On top of that, there are real technical reasons as well. First off, by using a custom engine, we have a lot more control over everything. We can choose how we want to store game data, we can choose how to distribute tools, we can change anything we want - it's our engine, and we can do literally anything we wish with it. If we find a bug, we can fix it. If we want a new feature, we can add it. If we want to support DirectX 11, OpenGL, and Vulkan, we can do it. Beyond that, we also have a strong passion for modders. We love when community members create content and expand upon their favorite games, taking them further than ever thought possible. Our marketplace will allow mods of any sort - as long as they aren't cheats, viruses, or anything else malicious of course. We support creativity, not ruining people's fun. If you develop a mod that uses crazy file patching of the actual executable and you need to provide 6 paragraphs of tutorials, you're welcome to distribute it. Got a cool tool that introduces some new features? Awesome! Just note that as a user: we aren't liable for any damages to your game data, account, or anything else as a result of using mods. We can't screen every single one for perfect integrity. If you do find something malicious, do report it to us immediately. But I seem to be getting off topic. The point is, Blamite is being built to enable modding. Not every single game will support it, of course. But we (for the most part) won't take steps to stop you from playing with a game you either obtained free of charge from us, or one you paid for. What exactly is this engine going to do? Our engine is being designed to operate similarly to Halo's Engine (unofficially known as Blam), and use many of the same basic ideas of operation - with some of our own blood mixed in, of course. Our goal is to make it where those used to creating maps for Halo Custom Edition or Halo 2 will find themselves in a fairly familiar environment, as well as make modders feel at home when doing some simple tag editing within a map. Now, I know what you're thinking. This has got to be illegal as hell. We believe that Blamite is legal for the same reason ReactOS, ElDewrito, and other projects are legal. Halo's engine is not sold on its own, only games made with it are sold. On top of that, we have a strict policy against using any reverse engineering to decompile official game executables. We don't use any official code - decompiled or leaked somehow - from the official games. Period. If you happen to be a Microsoft or 343 Industries employee reading this, and you determine that our work is ultimately not within legal bounds, we are more than willing to cooperate and reach an agreement on how to proceed. You can reach us by using our contact form or via emailing us at [email protected] But the real question is: why? Why start this project that has a chance (albeit an incredibly tiny chance based on our understanding) of getting shut down or massively hindered by "The Man"? Passion. We are developing this for the same reason we are developing Project: Infinity. Out of passion. The Blam engine is an incredibly fun engine to play with, and with our first project being Project: Infinity - a fan made Halo game, it's a match made in heaven. Beyond that, we plan to continue to develop and update the engine from here on moving forward. How can I help this project? Want to help? Great! We have a huge amount of open positions at the time of this topic, since the project is still in very early stages. If you want to help out, you can click here to go to the signup page. Keep in mind that, like Project: Infinity, you will not be paid for work on this. This is being handled the same as Project: Infinity, partially because of the fact that this is being made for Infinity initially. We are mostly looking for those with experience in modding official Blam games (any game, preferably within Halo 3 to Reach, however any is really accepted) or those with experience in creating Halo Custom Edition content and working with the editing tools (Sapien, Guerrilla, Tool, etc). If you happen to just be a programmer with a love for Halo, that's cool too. If you're just a programmer looking for something to do, just understand what this engine is. Regardless of your status as a Halo modder, content creator, or just a fan, you will have relatively strict guidelines on how to develop the engine. As in, you will for the most part be making things work and operate in the same way the official Halo games load content. If you don't know how this works to begin with, be prepared to be educated (by someone, nobody in particular is in that role yet) about the ins and outs of the engine. Modders and creators will be at a strong advantage as they will already understand more or less how the engine operates. Relevant Links We have added some new sections to the website to help account for our new project, and all relevant links can be found below: Blamite Game Engine - Official Site Blamite Update Notes Blamite Development Blog Blamite Subforum Blamite Team Signup Page So, what's the plan? As the engine matures and grows, major updates and improvements will get their own announcement, with smaller, less significant updates being posted more frequently to the development blog. Changelogs for versions can be found in Blamite's update notes blog. What are your thoughts? Are you excited for the future of Elaztek and Blamite, and the future of all our upcoming projects? Do you think this is the dumbest thing ever? Let us know!