Hello everyone. It’s been a couple of weeks, so it’s time for another official update about the status of Survive the Wild. I’m going to try to post these either once every approximately 2 weeks, or whenever something particularly significant happens. We’ve had some awesome successes, a couple of setbacks and a more thorough todo list. Though some of it gets a little technical this time, I will describe all of it as it stands in this post.
This is something that I actually failed to mention in the last post, and I apologize for that. One of the things that has been holding us back for a while is the inefficiency of our pathfinder usage. The pathfinder is the component that scans the game map and generates intelligent paths for npcs to travel when going from destination to destination. For a little while after the July audio demo, the pathfinder worked but was inefficient. Then I tried to make it more efficient and broke it beyond much use. Having a lot of things to focus on I couldn’t always attend to it, so it remained broken for a couple of months while the Angelscript and Linux conversions were going on, leaving worldmakers to focus on script conversions and map/item/object work. A few months ago I improved the pathfinder to a point where npcs could at least spawn again, but not in large groups, or not for very long.
Well, I’m glad to say that we have finally resolved a large majority of our pathfinder implementation issues! Though there are still a few hickups from time to time, I have a little lag todo list, and once all items in it are implemented, we’re hoping for as close to perfect stability as we can manage. We’ve been running an extended test over the weekend, and are happy with the results thus far. We can do this while working because the server does not need to be restarted for scripting changes, and I’ve been doing other things which I’ll talk about in this post. So far though, the server has been running solidly for 4 days, 13 hours, 31 minutes, and 6 seconds. there are 1827 objects, 5509 items, 186 npcs, and 313 maps. Right now 83 of these npcs are moving while the rest are idling. Most of the idle npcs are resting, the few others are unfortunately stuck at waterlines. We have this bug right now where an npc will occasionally enter the water outside of their spawning zone and get hopelessly stuck. One npc will exhibit this behavior, and eventually die due to lack of food. Then another will find the exact same broken area because of the edible corpse left behind by the broken one, and it will get stuck too. This cycle continues until a giant pile of corpses and skeletons are all on one tile. We will of course attend to this, and once we do, a larger percentage of npcs will be moving around at a time. Though there are still a couple of things to resolve in regards to pathfinding, we are finally nearing a state where the lag caused by the pathfinder doesn’t severely inhibit the playability of the game and hope for that lag to reduce far more in the coming days! Of course I’ll provide another update on that in the next post.
Unexpected voice chat improvements
Sometimes I have to experience the problem to fix it. I recently moved back in with my parents, who have switched to using a cellular modem for their internet connection. This combined with any small amount of game lag would make it so that my own voice chats would be very breaky and jittery. I haven’t been very happy with this cellular internet connection, but since the debug data was available to me, I decided to take an hour and tackle the problem. The result is that voice chat is unexpectedly much more stable for everybody, usually even when the game is laggy! I just wanted to mention it quick as it’s a nice little unexpected bonus that I figured everyone would appreciate. Lag has decreased and stability has improved in almost all areas of the game in this version for an uncountable number of reasons, I’m glad we can specifically add voice chat improvements to that list!
Status on SQLite data conversion
I’m happy to say that I’ve successfully written scripts to convert the character data, the account data, and the account history to SQLite, and they have been tested on beta’s character database. They work great! Only a few minor modifications will be required to make all of these scripts work on main’s database. I’ll run them on it soon and have it prepared, but this will take place very near the public beta launch right as we’re getting the libgit2 integration mentioned in the previous post working, just encase any changes to the database structure take place before that time. This way, I don’t have to keep modifying the not yet live main database every time I change the internal structure, but can instead prepare it once near the release. I still need to write a script to convert the group chats data, but we’re nearly done with all this SQL conversion stuff! Support tickets are also theoretically converted, but we can’t test them yet. More on that below.
Status on the one large remaining admin UI panel
As mentioned in the previous post, I still have one more massive administration dialog to work on. This is the dialog that lets Admins view and modify anything necessary about characters, instead of using a bunch of legacy slash commands. We can change what controls appear in the dialog for each rank on the fly, for example a moderator may be able to restrict a person’s chatting, but the controls that allow them to view a player’s in-game location can be hidden. This is a very very complicated dialog with loads of controls. So complicated in fact that it resulted in a hiccup that lead to a little tangent. Basically there are several lists in this dialog, such as the one for restrictions. Rather than cluttering up the dialog even further with an add restriction, edit restriction and delete restriction or similar button set after each list (there are like 8 of them), the best way is if an admin can press ctrl+n in the restrictions list to add a new restriction, enter on a restriction to change it, or ctrl+delete on a restriction to remove it. I want this to be the same for all lists from quests to unlocked locations etc. The problem was that the remote dialog layer had no support for such shortcuts at all. So I had to take a break from working on the dialog itself to go add this support to the remote dialog layer in general. I have finished that however, and have made more progress on the dialog since then. It hasn’t been completed yet as there have been some distractions, such as the Angelscript bytecode loading issue described below. It’s getting there, however. I mean hey, at least now we can easily add any shortcut to any remote dialog, which in the future I imagine will help the UI along for players as well.
There have of course been some more minor improvements over the last two weeks that aren’t quite deserving of their own section. The most important of these is that it is no longer possible to double press buttons in dialogs. If the server was laggy, or if a player simply pressed enter two fast, they could accidentally perform any number of transactions multiple times, and I don’t even want to think about how many bugs it was causing. For example we previously had issues regarding renaming and deleting characters, but only occasionally. I sometimes wonder now if some of those issues were because the rename button was clicked twice very quickly in a row when the server only expected one valid renaming or deletion dialog submission, though even if this wasn’t the problem the old file based character system (prior to SQLite) certainly was. Now renaming or deleting a character simply involves changing a field in a database, not renaming files and modifying the linked account data to represent it as before. Similar in severity but in different ways, a user could also double click a purchase button, thus spending twice or more the amount of credits or points they intended! Someone could give an item twice if they had that quantity, etc. Needless to say it’s a good thing that this was resolved, now the dialog locks up until a response from the server is issued so that buttons cannot be pressed multiple times before the server replies to the first button press at least once.
I’ve also finally given worldmakers and scripters the ability to alter more player properties last week, basically a scripter can now alter the jumpheight, autowalk speed, tile tripping limits, etc for a player. This could have any number of effects in the future, from an over large pair of snowshoes that make it easier to walk in snow while making it more likely you’ll trip on other surfaces, to arenas where you can pretend to be a superhero with speed, jumpheight and other stats that could never be acceptable in the main game. I’ve just added the feature, it will be fun to see what worldmakers do with it!
Another minor useful edition is that last week I was able to successfully link with a cross platform system information library. I’ve had my eyes on this library for a month or so now, and have finally wrapped it in NVGT. This is nice because now the server can detect, for example, if the server is running out of disk space or ram, and can now automatically react accordingly. I can also finally check how much memory the server process is taking directly from within the game, so no more having to ssh into my server and request a systemctl status on the server’s service for that simple bit of information, yay!
Other than that, most other minor things I’ve done are unfortunately too small to readily remember and thus list. Due to npc fixes and trying to test support tickets actually, we did improve our exception logging significantly. I have so much more info as a developer now, as whenever there is a minor exception either in a shared item/object script or in the main game module, all call stack information is now logged somewhere instead of just the exception itself. Worldmakers and scripters can access these exceptions, so they are also able to debug their own scripts much more easily now. Similar improvements to the logging facilities now allow us to find most problematic npcs very quickly and go attend to them. Well, at present that’s all I can think of in regards to minor improvements since the last post.
This sql conversion has caused a previously minor Angelscript bug to become more critical
We’ve had a long standing issue with Angelscript pretty much since STW first ran in NVGT in March 2022. It’s hard to explain it in detail without getting overly technical, but basically I found that the first time I tried compiling Survive the Wild instead of running it from source, the Work-In-Progress (development version) of Angelscript that I was using was unable to load the compiled bytecode of the game. I was only using a WIP version in the first place, because the previous public version before that had a backwards compatibility issue with ternary operators. Basically because I use ternary operators all over my code, I was unable to compile or even run stw using version 2.35.1 of Angelscript, which was the latest at the time. Though I tried various versions, the end result was me spending hours rolling back the Angelscript commit history to find a WIP version new enough to have fixed ternary operators, but not so new that the bytecode loading errors were introduced. We’ve been using this WIP Angelscript version from January 2022 for months now.
And then, I wrote that wrapper around SQLite that I mentioned in the previous post. Everything seemed fine. I converted and tested characters/accounts, everything still seemed fine. Then I converted tickets and tried to test them, and that’s where we ran into a problem. Unfortunately, in that old WIP Angelscript version I was using, the operator overload that lets me convert a class back into a string is somewhat faulty. It seems that this bug was likely discovered and fixed in a later WIP Angelscript version, which I cannot upgrade to because it will produce a bytecode loading error if I try to run the compiled game.
So, left with the options of hacking around with older angelscript versions/dirtying my codebase to try to get tickets working, or contacting the Angelscript developer to actually get the bytecode loading bug fixed, I chose the latter. As of yesterday I’ve already contacted the developer, and I’m happy to say he’s already responded! Therefor, I spent most of today gathering more debug information based on his instructions, and have sent him an update. I’m hopeful that we’ll be able to upgrade Angelscript and test the conversion of support tickets to SQLite soon! I’m not even sure that this character administration dialog will work either until this is fixed, as many values from the character are casted to strings to show them in the dialog. As I said earlier I may be able to negate this by dirtying my codebase, explicitly calling string constructors all over the place etc, but would obviously rather not do that for several reasons. Not to mention, I learned a valuable lesson about reporting Angelscript bugs as soon as I find them. Due to my failure to contact the Angelscript developer before now, this obscure bytecode loading issue actually made it into the public Angelscript 2.36.0 release in late September of 2022 even though I’d known about the issue since March of that year, stopping me from using that as well. Therefor taking a couple extra days to properly resolve this with the Angelscript developer helps not only me/the game because it will allow us to use the latest, fastest Angelscript, but it will also potentially help every Angelscript user who may also run into the bytecode loading bug in the future. Anyway, today I was able to distill this bytecode loading issue into a tiny tiny sample of code and have sent that off to the Angelscript developer for analysis, you’ll hear the end result of that hopefully by the next blog post at the latest!
So what’s left to get done?
Please keep in mind that our todo list expands and shrinks as we discover issues, fix them, and make general progress towards this release. Not only that, but it’s difficult for me to remember everything that needs doing all at once, as you may have seen I managed to completely forget about the pathfinder in the previous post. Therefor if I forget something major here, I do apologize, I’ll of course try to be more thorough than last time.
Though the server is mostly stable now, we still have some pathfinding related issues to resolve as mentioned above. The one I’m most excited about getting done is the calculate_distance_desperation function. Right now, when an npc tries finding food, it fetches a list of nearby items, and tries pathfinding to the one with the closest straight line distance from the npc. This has been leading to several problems, for example an npc will cross a stream to grab a food item that’s 20 tiles away, while ignoring the other, much more easily accessible food item that’s on the same side of the stream but is 30 tiles away. Similarly an npc will climb a tree to grab an apple just because it’s a few tiles closer in a direct straight line, rather than going for the much more easily accessible apple that fell from the tree onto the ground not much further away. We only want to calculate complicated paths when absolutely necessary, both because doing so too often makes an npc look a little dumb, and also because the more complicated the path, the more aggressive the lag can get. See, water has a higher desperation factor than grass. This means that usually npcs will avoid the water unless they need it or are meant for it. So when an npc tries calculating a path across the stream, it will scan literally every tile on it’s current side of the stream first, up to the maximum pathfinder search range. It does this because do to the very nature of the pathfinder, it must calculate the path with the least cost. This means the pathfinder must assure itself that there is no easier way to cross the stream than just crossing the stream. For example the pathfinder is looking for a tunnel under the stream, a tree with branches long enough to cross it, a gap in the water where it can walk on land to cross etc. A great example of this is the clay on the mainland, which is surrounded on 2 sides by stream, one side by swamp and the other side by beach and then ocean. So if an npc that is in the clay area tries to cross the stream, it doesn’t always actually cross, but instead may go all the way south to the beach followed by moving east along the sand, before heading north to the intended destination on the northeast side of the stream. This sort of thing can happen with all kinds of other tile types and eventually can get very costly, so we therefor must minimize such complicated paths as much as possible. To do this, I intend to write a function that does calculate distance between one object and another , but not in a straight line. This function will instead sum up all desperation factors of all tiles between the first and the second object in a straight line. The result should be that if a straight line path crosses tiles with a high desperation factor, the object’s distance from the npc when calculated with this function will be much higher than an object that actually has a greater straight line distance, but with lower desperation tiles between itself and the npc. After this function is written, we should be able to select the easiest food item to go retrieve rather than the theoretical closest. There are other smaller improvements we need to make with the pathfinder, such as npcs occasionally getting stuck as mentioned above. Just talking about one though in this much detail is probably boring for some readers, so I’ll stop with that one and just say for the record that I’m extremely excited to clear out this pathfinder related lag todo list and see how stable the server gets as a result, we’re already very much getting there!
Then there is of course finishing this final UI panel which as I mentioned was already started. We have some smaller UI related things to solve, such as some editions for admins that will be so easy they aren’t worth mentioning here, and some things to fix in a couple of menus that I am not sure I’m ready to spoil right now. Considering that I’m having a hard time thinking of any other UI improvements that need to be made, I think we’re finally nearing the end of that stuff as well!
I still must attend to this libgit2 integration mentioned in the previous post, this is the thing that will let worldmakers transfer their work from the beta/development server to the public game. Allowing scripters and worldmakers to script directly on the public game is far too dangerous for several reasons, so getting this one working before the release is a must.
I also have a bunch of English writing to do aside from the code. I need to update a few things in the rules document, and though it’s less critical, I should probably touch up the stw website a bit before it goes live. While this may seem like a temporary waste of time for experienced players, it’s important to remember that new players will find the game through this website as well. Currently this website only has functionality, it does not yet have large blobs of text that, for example, explain what Survive the Wild is, the features, and other various information. We have a credits page, but so far it only lists the automatically generated music credits, not staff credits yet. Though theoretically not required before the public beta release, it’s probably a good idea to get this website touchup out of the way. I’m pretty sure that public beta will present an initially sizable bug list which will need resolving, and this would distract me from being able to fix the website sometime shortly after the game goes live. It seems prudent to do it ahead of time as I do not know when the first relatively calm period will take place after public beta releases.
The RTig to Angelscript conversion is still going on. As I’ve been focused mostly on the hardcode, I have not been monitoring this closely enough to provide detailed statistics on what’s left there, but for sure by the next blog post I’ll make sure to give more details on that if it’s not already done by then.
I also must still take a day or 2 and attend to the tracking system as mentioned in the previous blog post. It’s already immeasurably better than the old system, but it still needs polishing before it’s completely ready for use without being a bit annoying to operate. It’s one thing I haven’t started touching yet since I first talked about it
Since I haven’t been able to test tickets yet, I still have some work to do to make them have categories such as bug and suggestion. The database has a type field for each ticket now, but really I still have to do most of the grunt work involved to make each type of ticket show up in the correct menu, make each ticket type have different states (such as critical or duplicate for bug or awaiting communication/resolved for general tickets), and a couple other things related to the system. I really wish I’d thought of this when the ticket system was first being coded, however we didn’t come up with the idea to make bug reports and suggestions a type of ticket until sometime after the system had been complete. I’m not worried, once tickets (converted to SQLite) have been confirmed functional it should only be a few hours of dedicated work to get this done.
One thing that’s easy to forget about at least right now with other stuff to attend to is that I need to fix our PayPal integration. Stripe works beautifully, but in mid 2022 when I created the new website, I was having some minor nightmares trying to deal with PayPal’s sandbox account pages. I think I got it working with PayPal’s antiquated and legacy IPN (Instant Payment Notification) system. However this system is, if not officially considered deprecated, very old and it can sometimes take ages for a payment notification to reach my server, causing players to wonder why they aren’t seeing their credits. An admin would then give the player replacement credits considering the transaction notification to have somehow gone wrong, only to see the actual transaction notification appear an hour later thus giving the player double credits. PayPal has created a much more efficient system called webhooks, which uses much more standard technology, is much more instant, and is much newer and therefor more supported. As such, I intend to replace the old IPN system with the new webhooks one before the store goes live. However, since the store will be offline during public beta anyway, I may be able to get away with getting this one resolved after the first release rather than before. PayPal has luckily updated their sandbox account pages. Where as before they were badly next to unusable with a screen reader, I’m happy to say that they now appear beautifully accessible and so I should have no more issues operating them!
We are planning to change how deleting characters works. In the next version, assuming it has no linked characters, you can now finally mark your account for deletion after 30 days of no use. We want to implement this for characters as well, where instead of instantly deleting a character, you mark the character for deletion, which then takes place 30 days later assuming you have not logged into the character since you marked it to be deleted. This however isn’t particularly critical and we may save it for after the first public beta release.
Finally, we also still intend to take this extra week once we’re all done with everything to look over our work and to refine some content. This was mentioned in the previous blog post.
At the moment, that’s all I can think of. Though I checked our todo list, some tasks do not always end up getting written down in it either because they are very small, very transient or show themselves repetitively enough that we don’t need to write them down to remember them when it matters. I think we’ve been pretty thorough with it, but I want to apologize ahead of time if I’m forgetting something else we need to do that suddenly pops up in the next blog post, as has happened with this one. Hopefully though this section has listed the vast majority of tasks we must complete before releasing the update, and even some short-term items that we are considering saving until after the first release.
And so, progress continues
Well folks, I think that’s all of the updates I can think of at this time. As you can see progress continues day by day, and we are as excited to show what we’ve been working on to all of you as players are to enjoy it! As always, thank you all for your patients, kindness, support and understanding during this unfortunate downtime. Our goal remains the same, to get this update out to everyone as soon as we are able to logically do so!
Huh what do you know, at least my blog posts are getting… IDK, somewhat more positive? What can I say, progress, at least progress!
good work sam, i hope to see a better version of stw soon, speaking of public beta, will we be able to restore are stats in the public beta, i don’t think so but still asking, lol
There will probably be few special commands that public beta members have access to, accept for maybe the ability to receive temporary credits since the store will almost certainly be offline for most of public beta aside from when we specifically enable it for testing which will not happen immediatly.
nice! we’re still waiting the upcomeing update!
Sam, please try to tell us more precisely how much time is left for the update. Knowing about the process is exciting, but we don’t have an approximate date, hahahaa. Two weeks? More?
yep, it would be great
It’s not a really good idea to ask for time frames or dates. This is a long process and time frames and dates usually give false hope and then result in more writing when a developer feels it necisary to apologise for giving the date and not meeting it.
greetings sam, i really became so excited after reading this, i can not wait, we are truelly on the fire to see that stw’s new baby born and till then we wish you the best and for all the team
hi Sam let us know how long it will take. Another problem is that we are going to forget many commands. Thank you Sam
I might also forget how to play the game hahahaha
very good! I hope this update is impactful, I am very anxious to know the new dynamics of the maps, I hope to be able to hunt many animals, sometimes I even dream that when I open the Survive the Wild client, a message appears saying that a new update is available, I hope that someday this dream will come true. Thanks so much for the news, and take care!
Hello @Sam! It’s really the best news from on weeks after the catastrofic stw did shutdown. Is really good hear that the things go full steam ahead with the development. I have really hopes that the new version see the world light shortly . As you not mentioned, I guess that your recovery was full completly, right? I’m waiting for the blog’s post: “THE NEW STW VERSION WAS BEEN RELEASED!”
I hope the update comes out soon
hello sam, i’m waiting the update version of stw because at this time we feel boring so much and we do not have anything to do lol. post the update fast pleas.
hi sam, i hope you are grate: you said i’m gonna upload all my bgt projects to my github: does that also incloudes this bgt version of stw that is currently down and you converted it to nvgt? thanks
He said he would upload his old bgt developer scripts to git hub, not games.
Hi there Sam. Can’t wait for the new update. I know it must be hard to code all of that, even though we are nearing the end of it all, but there still seems to be a lot to do. Good luck with it. These new animals are gonna be scary, lol. I’m not going to be surviving in the wild for very long anymore hahahahahaha! Anyway, just thanking you in advance for this update, even though I haven’t seen it yet.
In the new update will npc be able to go beyond the limits of their map? For example: will the island rabbit be able to go to the nearest map? Also, what is the maximum range of vision of the npc? That is, at what maximum distance will the npc be able to see food? Also, I’d like to know if there are human npc’s in the game that speak in a sapi voice? Thank you in advance for your answers.
i miss arena
come on, lets create an arena there. lol
ChatGPT has made a lot of noise in recent months. Please tell me, will there be an npc bot using the openai api in the public beta version, or in the release version? The gpt model can be taught to walk, for example, by creating special commands for it. I understand that there is no time for this right now, but will this be added later, perhaps in a few years?
I don’t think it worths for a survival game.
There are no plans for this now, but who knows in the future. There have been a few scattered conversations among staff about using chat gpt as some sort of npc conversational model E. activate it instead of saying “Huh? I don’t understand you.” But even this is very difficult, as we’d need to insure the npcs can never break character etc. Generally we’re worried about giving too much of the game over to chat gpt if we ever decide to integrate it. The entire concept of AI is so powerful that we want to be careful to make sure that stw remains our creation, and not some engine for hosting AI generated content of which we can never guess the source material. As such, any notion of integrating chat GPT or similar into STW would be fraught with much skepticism and hesitation, though that doesn’t mean we won’t at least consider it to an extent sometime in future.
hi guys,we want to thank sam for his work
,thank you for do long time for make this game online again,the programming is not easy,and happy developing,and good luck
hi Sam we can’t wait anymore. STW new update will start in how many days? We would have felt a little relieved if we had been informed
Man you should really have some patience. I dare to say you can’t code anything at all, and it’s a hard time for Sam, creating all of this great stuff. And attempting to pin down a release-date will only result in disappointness when he can’t release it than. Just wait.
as we already realized that weeks will take months and that the backup is really lost, why not put the old stw back in the air? that way we would have something to do and reconnect with friends we lost contact with.
I am attaching a message from Sam regarding this situation. read it carefully. It also answers the questions of those people who were saying that Sam should start the free for all situation like he started in May 2021 .For anyone wanting to know why we aren’t choosing to repeat what we did in May 2021 when we left the server in a free-for-all state, there are a few reasons for this which somewhat coincide. In May 2021, the server was already fully functional and the data was already in place. We were able to quickly and easily make and implement the decision, in other words, choosing to free-for-all in May 2021 did not detract from our ability to work on the update because there was no setup required. Here, I would need to set up not only a virtualized environment for the old server to run on, but also access methods which would allow administrators to conveniently access logs, just encase even in free-for-all a situation came up that needed our attention. People have also just lost 3 weeks of gameplay. Some might remember in May 2021, a condition of the free-for-all state was the restoration to the backup taken when that time began. I don’t want to ask people to play for an indeterminant amount of time only to lose that on top of these 3 already lost weeks. These free-for-all situations are also particularly difficult for newbies to deal with. Finally, virtualizing the server would likely make it slower than if it was to be run natively. This would lead to a less than optimal experience which we wouldn’t be able to spend much time fixing on account of our focus needing to be solely on the update. If conditions were similar to those in 2021, we would certainly consider doing a free-for-all again, in fact it had crossed our minds before the crash. Given the server crash though, this is no longer a viable option unless people want to wait even longer for the next update just so they can play an old, broken, slow, temporary version of the game. Mind you the fact that people are eager to play makes me immeasurably happy and appreciative, but in this case, leaving the server down until the update is truly the most prudent decision.
if you take a look at the previous posts you can understand why rofl
I wrote you an e-mail about 2 months ago, but I suspect you didn’t have time to reply to some stupid e-mail or you just ignored it.
Regarding this email, I have a question, what will happen to players who have been banned for theoretically using macs?
I’m not just talking about myself, I know a few people who didn’t use macros or some kind of script at the time of their ban, and there was no conversation where they could explain themselves.
Best regards and good luck with further creation/fixing
why don’t open the old virtion aaaaaaaaa, i can’t wait new virtion,, i am very bored very very bored
That all sounds so good to read. Come on Sam, we’re excited for the public beta!
Hello, I also hope that the game will be released as soon as possible. There is a place to thank Mr. Sam for his efforts and tell him not to be tired.
sam, you said you are gonna upload all your old bgt projects in your github, but you haven’t uploaded any of them yet.
I apologize, you are correct. I still intend to upload these. Honestly though it’s a lot of really old code that is no longer very useful these days, so I’m not in any huge hurry to prioritize this task, in fact I still have to go find some of that stuff maybe on backup drives sometimes.
Hi Sam please upload the old STW for now and let us play. Then update the new beta version
it would be nice for people if you added some kind of discord read only thing to this website, for the people who don’t use it.
That’s an interesting concept, mostly because discord actually may allow such a thing through their various APIs. I don’t know if I could get it done very soon, as this would involve a lot of learning documentation followed by setup, and all my energy for soaking up knowledge must go into things like understanding libgit2 or other very stw related tasks right now. Furthermore, though the English discussion on Discord can sometimes get interesting, maybe sometimes a small update could be posted there a week before the next blog post, the simple fact is that most very important information will end up on this blog within a couple of weeks of it’s happening, so you probably don’t have to worry about missing too much at present if you don’t use Discord, accept for any interesting community discussions that start up there. Regardless though, that may be a fun little side project some day! Perhaps I can even make a more general embeddable widget that someone could add to their website to show read only messages from a given channel, so long as said server/channel allowed it. Who knows, maybe something like that exists already. Anyway, time will tell!
All big games have official release dates / updates.
Why doesn’t new STW have it?
Better to know where you are than to go where you don’t is pretty much my conclusion on this
Specifically in comparison to large main stream games? Mostly because those are released by massive companies who can hire any talent they desire and who have multi million dollar budgets, rather than one developer working with a small though awesome team of volunteer worldmakers, scribes and administrators.
Sam, sorry, but I’m not talking about big game companies.
What I mean is that for me it’s a great game. For sure, a great game reference for all blind people.
Perhaps, if you could say that you deliver the new STW this semester, that would be excellent.
By the way, I don’t know any game better than STW, until now.
If you could be less programmer and more gamer in your next posts, it would be easier to understand what is being reported here on the blog.
I say this because the vast majority of players do not have programming knowledge.
Thanks for the answer.
I don’t know what else you’d rather me say, as what I am doing is programming the game and am wanting to give everybody an opportunity to see what’s happening behind the scenes since I can’t give any release times. If I removed all of the technical stuff from these posts, I’d have very little to write about and may as well just post a few word reminder which would refresh everyone’s knowledge of the fact that I am still working on things. I don’t want to spoil any actual upcoming content for the most part. The most I can do I think is to consider some sort of tldr section at the top of each post if that would help?
Thank you everybody for your kind comments, it’s much appreciated! Sorry it took me days to finally reply to all of these (I’ll try getting better about that)! Of course, the most prevalent question is when will this all be done? I don’t blame anybody for asking such an obvious question, though I’m sorry to say that as always, I have no definitive answer. If you read between the lines just of this blog post alone, you’ll notice that at least 2 unexpected issues presented themselves, one of those at least somewhat putting me at the mercy of another developer’s time schedule. Because of such fluctuations in our todo list, we’re not willing to predict the unpredictable and give any dates or time approximations as to when we expect we’ll be done. Quite simply, what if we’re wrong? What if an issue takes a week or even 2 weeks longer to solve than we thought it would? I can list at least 3 negatives without even thinking about it. 1, High hopes being dashed feels terrible! We don’t want people to plan a day of excitement with their friends only to be severely disappointed because something came up that delayed us. 2, If we’re wrong about a release date too many times, our communication would start being untrusted by more and more people. Whatever I do tell the world, I want to make sure it is as accurate as I can make it at the time of writing. Giving a release date that I cannot stick to compromises this and starts to make my words untrustworthy. As such, I’m only saying what I know I can say truthfully, which is that even though I secretly do have a date in mind, I don’t intend to tell anybody because it is only a hope and nothing more, and sometimes hopes get shattered. I’d rather only shatter my hopes of day X or time Y, not an entire communities! 3, trying to stick to a given date or time reeks havoc with behind the scenes development. First before the date approaches, my code quality decreases dramatically as I try to rush to meat what is really nothing more than an arbitrary point on the calendar. And when inevitably something takes longer than expected anyway and I can’t be ready by whatever time point I’ve chosen, I then just feel terrible and demoralized for letting so many people down / not being able to code fast enough etc, even though deep down I know that the faster I code, the more likely it is that bugs will be introduced. Oh and 4 just because, if I do fail to meet the given date, I then potentially must spend hours to days doing public relations work, writing detailed explanation’s of exactly what the delay was, and giving out dozens of apologies to various people who ask why the game isn’t out when I said it would be. If I never had given a date at all, I could have spent those hours or days actually coding the game rather than explaining myself. I fully admit that though I’m good at programming and sound design and English writing, managing time very well is not one of my gifts. In fact I have an ADHD diagnosis! Because of this defect in my skill set / the entropy involved in this game’s development (however you choose to look at it), I’m instead making the compromise that though I cannot predict when the game will be released, I can for sure promise a blog post approximately once every 2 weeks with the latest development news including as much as the remaining todo list as I can manage to write down, so that people can get as much of an idea as possible about when this will be released. I’ve said it many times and I’ll say it many times more, I genuinely apologize to everybody that predicting release times is not something I can currently do right now. However, the game will most certainly come online again, that I can promise. Unless my life as I know it is somehow destroyed or very significantly negatively altered (god forbid), I solemnly promise that Survive the Wild *will return. You’ll be able to read another update post within days to see what’s been going on during these last couple of weeks. Again, thank you everybody for your kind support, understanding and patient’s! I’m sorry that I can not give an actual release time estimate.
hi sam, hope you’re doing well.
the comment replies in the blog posts didn’t have email sent to be noticed that they got replied by **name**.
it would be great If we receive email notification alerting that we have received a new replied on the post.
Huh, another interesting idea thanks! This comment actually did prompt me to configure basic mailing for this blog for whatever I may need it for, I may certainly consider this feature when I have more time!
Hi, Sam. I have a question: after releasing the update, will you fix the crossbow? I miss him rofl
thank you sam, for replying, but stil i have a question: would you also give out the bgt version of stw since now you’ve completely rerote it, because stw’s bgt version can be really nice and we really liked it, for example, the ui, the edit boxes, making such a nice ui for a game in bgt is so hard as stw doesn’t support the actual windows ui it self, you have to right everything: thanks for answering.
Um, no of course not? Anyway I didn’t completely rewrite STW, I completely rewrote BGT. So the bgt portion of stw’s codebase is more or less still used, though it’s been much improved over the last year both just in general and also more specifically because I can finally bind new c++ functions to my engine without being forced to comply with bgt’s limited dll calling system.
what, you mean you were rewritten bgt engine with new features?
I want that new features lol.
It’s relieving rofl, New Survive the Wild website coming soon, restricted at this time to beta members and staff!
Hello Sam I was wondering if the npcs are now ferocious and fast moving hope these have been changed? I mean, I want to know if the npcs will attack us quickly?
Yep, that’s the plan.
Hello, I’m very curious, could you tell me if the new stw will use a sql remote or local database to store the data?
The main database is just local, that way it can be accessed as quickly as possible. Then, that db file can be backed up to as many off-site locations as we want. We don’t expect we’ll be generating anywhere near enough data for SQLite to start to choke.
oh nice sam! then, what about giving us your new bgt engin so we can also make our games with that new bgt engin instead of this old bgt? or you also don’t want to releace that too?
I have no plans to release my engine at present, other than privately to a few developers who need it (please don’t ask me to list them or how to become one).
it would be great If you release it to public. because you know, it will not contain your game data so it has no worrys
hello, why don’t you open the old stw, in these boring days we can spend time with our friends even if there is a lot of lag at least in these boring days, I prefer to update the old version rather than wait and ask when the beta will come, it is very interesting to leave survive the wild closed when there are really no obstacles, I hope rs It won’t be like the closing of the game, we trust and wait for you, but as I just said, it makes more sense to keep the game open.
Had you actually read this blog post and previous ones, you wouldn’t be asking such a question, given the fact that Sam has pretty much explained the situation in as much detail as possible, and pointed out why keeping the game server down for the time being is the best decision, so please, just stop. This also goes for the rest of you asking for the old version.
and one more question, will nvgt be released to the public or will it be paid, because I’m very curious about it
Hi Sam! I hope soon the new update of stw. a hug. maxy29 from argentina
hello sam it’s been two weeks. Do another new blog post. We can be happy to read that.
hello everyone Dear Sam! There is no rush. Ignore the messages that say to update quickly. Because they don’t know how difficult it is to write programming codes. That is the time when you have to create an algorithm in your mind and implement what you have in your mind in the system. My question to these friends who are in a hurry to update is this. Would you like Sam to rush the update and forget some of the problems and make the game have big bugs? Or will the update be released later and enjoy a more stable version? If the update is done quickly and there are big bugs in the game,
It is you who criticize Sam and insult him. As a result dear Sam! Continue calmly and with high concentration. Those who like this game have to wait.
Hello brother I did not ask to update or upload. I asked to post something new so we know how much. Improvements have been made
it’s fine though. nothing happen to me for cannot play just a game.
hello, thank you Sam foo trying to inform us about the progress of stw developments with your blog posts! when will you wright the next post? i am waiting for the new blog post!
Did someone notice this. The number of comments on this post are the sum of the comments on the two previous posts regarding this situation, lol, excluding this one
guys, anything new on discord, from sam or admins?
Hi guys, just wanted to let you know that you can be rest assured that the next post is indeed coming, much of it is already written. It will likely be here in a couple of hours, probably soon enough that this here comment is probably unnecessary. Since I said 2 weeks though and it’s now been 15 days in pretty much all time zones, I just wanted to assure everyone that nothing has gone wrong or anything and that the latest news is indeed still coming as promised. Haha this is why I did say 2 weeks approximately, not 2 weeks exactly. Anyway just keep checking over the next hours or an announcement will be posted on discord, thanks all!
Uau! I’m really waiting for it with really expectative! That come new post blog!
hi I am kaushik youtuber i hope stw comes back it is boring