Do not upload images you did not create. Please read the Image Upload Rules before uploading.
Welcome to Antilia!
Antilia is a sandbox-style RPG which is currently in development. It features an open world, single and multiplayer modes, and customizable characters! Click on "Features" in the overhead menu to learn more!
Latest Video Update
Here is Antilia's most recent video update. Be sure to scroll down for the latest weekly updates!
Weekly Update - Chat Window, Bug Fixes
This week I started work on the in-game chat window. The work done so far has mostly been on the networking side - sending a message to the server and getting the server to echo the message back to all players in game.
A very work-in-progress chat window.
I still have some decisions to be make about how the interface should look - do we go with a dedicated chat window similar to what the MMO had, or something more like notifications and a smaller text-entry field that appears when you hit the enter key? Do we still want local-area chat (with those only near your character) in addition to server-wide? Do we still want to show attack stats as system messages, and provide a chat history? If you have any feedback on any of that, be sure to mention it in the #development channel on our Discord server!
Changes in the Tangled Lands
I've been working on a few small changes to the Tangled Lands, including a lit path leading through it to the Mages' Camp and adding some large lilypads.
There is now a lit path between the cave leading out of to the Mages' Camp on the Isle of Mist. There are still about, so watch out!
An experimental idea for giant lilypads in the Tangled Lands. I like the idea, but I may swap out the mesh with another due to UV issues.
Potential platforming challenges ahead if you don't have water running equipped!
World Resize Continues
I've also been continuing work on resizing the world as I mentioned in last week's post. The work performed this week focused on resizing Taipii equipment and fixing some inventory icons. There are still a few areas that need attention such as the Burning Sands region and updating the pathfinding networks after I'm done moving roads and buildings around. Overall I am really happy with the way this has turned out.
Boring Maintenance Work!
There are a number of things that need to be addressed before Antilia can enter alpha testing again. Stuff like fixing critical bugs, minimizing the download size, improving the networking code, and auditing packets to ensure they aren't bloated or being sent too frequently. Expect to see a few of these each week for a while.
Finding and Fixing Memory Leaks
In testing Antilia last week I noticed that the Antilia Simulation Server was using more memory the longer it ran, and doubling or tripling it's memory usage after being allowed to run for an hour or more. Clearly there was a memory leak. Without resolving that I wouldn't be able to run server tests that last for more than a few hours, so I had to dust off some memory analysis tools and find the leaks. To do so involved a massive search & replace across all of the Toi Engine and Antilia code. The process required several hours of walking through all 4700 search matches and separating 4100 cases that needed to be changed from 600 cases that should remain as-is. I hope to never do that sort of thing again.
But the effort was worth it. With the analysis tool in place I was able to identify the major repeating leak that was causing memory use to grow so rapidly, and half a dozen less consequential leaks. Unfortunately there is still at least one small leak that remains illusive somewhere in the AI system. If I disable the AI component there are no leaks reported, but when I turn it on there is something subtle happening that isn't easy to find - perhaps a circular reference that can't be freed on shutdown. I'll have to give that one another look this week.
But finding that major leak was the important thing - I can now run the server for hours on end without it gobbling up more and more memory.
Goodbye Data Channels, Hello Server Variables
Antilia's Simulation Server is multi-threaded, which means that sharing data between game objects can get complicated. Not to get too technical on this yeah right - I'm totally going to get too technical, but having the simulation run across multiple CPU cores opens up the possibility that one game object on one cpu core might try to write changes to memory at the same time that another game object on another core is currently reading from that memory. That would cause bad things to happen, and so care must be taken to keep the server threads never access the same block of memory at the same time.
The server has been built with several tools to address this: Object-to-Object Messages, Autonomous Processes, Server Constants, and the Data Channels System - the last of which turned out being the least useful and the most cumbersome to use.
I spent some time this week completely removing the "Data Channels" and replacing it with a simpler system called Server Variables. The new system is much easier to use - just a few functions that server threads can freely call to get variables immediately or set them on the start of the next cycle.
With access to Server Variables being so much more convenient now I plan to put it to better use in determining things like resource drop and spawn rates on the server.
A Few Changes in the Lexicon
And finally, here are a few small changes to Antilia's lore which were made this week:
- A number of plant-related words have been added to the
- The Bamboo Gardens finally have a proper name, and the village is now listed as
- The village of Little Garden has been given the name Wei Garden.
|Note:||In the future I will refrain from using the names "The Bamboo Gardens" and "Little Garden" and will start using these new names instead.|
That's it for this week, see you next time!
Article Link: Weekly Update - Chat Window, Bug FixesNews Article Page
Weekly Update - Chat Window, Bug Fixes
This week I started work on the chat system, and continued general preparations for multiplayer testing.
Weekly Update - Multiplayer Progress, World Scale
This week I started work on Antilia v0.12, with a focus on multiplayer and preparations for alpha.
Weekly Update - More Web Content and Fixes
This was the second week of my c++ programming break, and as a change of pace I continued work on the lexicon and website!
Weekly Update - Website Fixes, Lexicon Content
This week I made improvements to the website, and roughed in more pages to the lexicon!
Video Update - 0.11.0 Pathfinding and AI Behaviors
I just posted a new update video with a look at Antilia's new pathfinding and AI behavior systems. Characters and creatures are moving around on the Isle of Kasau now, and the Taipii are starting to work together as a simulated community!
Weekly Update - Tree Fade, Bug Fixes
Last week I focused on testing and fixing bugs in preparation for the upcoming video, and managed to implement a few small improvements I've been wanting.
Weekly Update - AI Cooking and Deliveries
As the mid-year point closes in I spent time this week trying to wrap up the foundational NPC behaviors and get a few new behaviors in place. As I transition to working on a video update over the next few weeks these updates will likely look a little different - with tasks related more to debugging and video production and less world building.
Weekly Update - AI Tasks, Southern Kasau Design Pass
This week I worked on a new "Task" system to compliment AI Behaviors, gave the southern side of the Isle of Kasau some preliminary layout passes, and improved the sea rendering.
Weekly Update - Burning Sands, Treasure Chests, Topo Map
This week I added two new regions to the game and improved a third, added treasure chests to make exploration more fun, and experimented with a new topographic style map.
Weekly Update - Fell Trees Behavior, Logging Camp, Bamboo Ponds
This week I implemented a new AI Behavior for felling trees, improved the area around the logging camp, and added a new "Bamboo Ponds" area nearby.
New Antilia Website Now Live!
The new Antilia website is now (mostly) live!