The radar window now works in the game. It shows all avatars that are nearby. It can also be used to select an avatar. Once the combat system works, it will also show the enemies/monsters. In addition to a few minor fixes, new portals and objects have been added to the game as well. The new fire effect looks awesome!
The examine dialog can now be used to identify all objects in the game that can be interacted with. This includes everything in your backpack. New treasure chests have been added to the areas where the portals take you, all with new inventory items.
The Trade Window in the game finally works correctly, and consistently. There was a lot of frustration getting there however! I kept finding a lot of weird quirks with how I implemented the drag and drop feature. For example, I was hit testing on windows that weren’t even currently visible, lol. This has all been cleaned up and seems to be working great now.
Currently working on the “Trade Window” in my Been There Game client. This will be used to safely trade items between two avatars, or a vendor NPC. To open it, you simply double-click another player’s avatar. If the other avatar does not already have a trade going on, your trade will be initiated. A lot of this code is similar to the treasure chest code that I already have working, so this new feature shouldn’t be too hard. We shall see!
Still working on the massive inventory system. There are a lot of small details to deal with! The treasure chest is working great now. Reward items can be spawned when an avatar opens it. The treasure generator allows you to specify individual probabilities for each each item. Or, certain items can always be returned if needed. People can also leave things in a chest for other players to find. Items that were left in the chest will expire and go away eventually, unless in a private chest. There is also a wait time before new treasure will be generated for each avatar. If the chest is a public chest, then there is a time limit on how long a player can keep it open.
I was planning on adding a chest that can be opened into Been There Game. However, I discovered that my keyframed animation system was not working totally correct. To deal with rotations that don’t happen around the object’s center, I realized that an optional offset transformation would need to be added to the nodes in the Orion Engine mesh file format. Luckily, this part was easy due to my “chunk” based mesh file format. All existing files still work as intended. However, I’m not going to lie; updating the scene objects in the engine proved difficult. The matrix math involved with the hierarchy of 3D transformations and rotations was hurting my head for quite a bit, but I finally have it all properly worked out. This new “feature” changed the way that my bounding volume checks and intersection tests must be handled. But, it ended up being a lot simpler to implement than I had originally feared.
I also made a lot of improvements to the engine’s exporter to fully deal with the object offsets and/or pivot points. The animation export has also been further optimized, to deal with redundant keyframes.
Testing out the fresh installation of Red Hat’s Fedora 32 Linux. Everything seems to be working great!
Some things came up recently where I had to take a short break. But I’m back at it again. The game’s inventory system was nearly complete. I just need to finish dealing with dropped items.
Once this is complete, I need to tighten up how the currently online avatars are being handled. This is going to be key in dealing with avatars that are in different zones; i.e. if a person is in a dungeon (or far away), they won’t need to know about any avatars that are outside of that particular zone.
Once the handling of avatars is corrected, I’m going to add a portal to a new dungeon. This should be exciting to see in the game, and a lot of fun to implement!
Still working on the inventory system for the game. Much of it is finally in place. You can move items around, and organize your packs. You can give items back and forth between avatars. Also, when you wield your weapon, other players in the game can see you change it, etc. It’s working pretty nice. Currently, I’m working on dropped items. This same mechanism will be used for spawned items as well. Hope to have more updates soon!
I’ve been working on the inventory system for the game. It’s key to getting the other systems in place; like the combat system, avatar armor, weapons, etc. It turns out to be a little more complicated than I had originally thought. There are so many types of items that can be in inventory, with so many potential destinations, and different interactions. I have all of the database details and hooks in place now, I just have to finish implementing things in the client and server.