Kassoon

Weekly devlogs: Rogue Legend 2

Get Rogue Legend 2

 

December 6 - December Completeness

Rough week, ended up having to revert Unity versions because it was so broken, and a lot of work along with it. The good news is, most multiplayer functionality is in. There's some bugs, but those aren't in the scope, so...

All that really remains for multiplayer is the server browser and buying/selling. NPC movement is still a little weird (but they'll participate in combat now), there's some sync issues with terrain, some sync stuff with movement, and certain permissions still need to be set up for survival mode to be fair. After that though I work on world gen, which is when the whole thing really comes alive.

Servers and clients communicate by way of packets which is just a feed of data. Packets have a max size, and a number of ways they can be sent. They can be fragmented, meaning the packet isn't guaranteed to be received in order eg. "Hello" is sent but "oHlle" is received since THE INTERNET and lag causes things to be received in weird orders. I talked about that a bit in the player movement devlog. They can also be unreliable, meaning they may or may not even show up at the client. Each of these methods determines the max size, with the messier the packet the larger it can be. Even using fragmented unreliable packets my terrain data is too large, so I'll need to further compress and cut it up to ensure it actually shows up, and send a hash so clients know if they've received the full thing or if something was lost in the tubes.

Upcoming Tileset

NPC movement has proven to be tricky, which I sort of predicted. Having all the terrain and objects spawned on the server is unreasonable when you have 30 players, and when npcs are pathfinding through an open void things can get kind of weird on the client when it's not a void and a chicken walks through a tree. Objects add an extra wrinkle of complexity to pathfinding, because they can be located anywhere, and have any size or rotation. I also store them as a list, meaning to even know where they are I need to iterate through it, which can get expensive when you have say 100 npcs all trying to figure that out every few seconds. The initial solution I went with was to just detect when a player got stuck and have them avoid that spot in the future, since it was the fastest. However since you can't get stuck when you're floating around in empty space, I'll need to use something else for server-controlled movement. I can either pre-compute which parts of the world objects block and then update that as things change, or just ignore the whole thing and have clients "fix" weird pathing on their end. I really like having clients do stuff, so I may go with that latter one.

The rest of the server objects were fairly simple, at least. Beehives needed to scan for flower spawns rather than objects, which is a faster operation anyway so that was a plus. Before it was projecting a large sphere that collides with plants and shooting rays at them which is much slower than performing list operations. I still think bees are missing one more gameplay element, so we mite see something there soon. Making solar stills work in multiplayer also made them more useful in single player, as they continue to collect dew while you're away by checking what their levels should be on spawn.

My multiplayer devlogs always seem to end up fairly technical. Is there anything you guys would like to hear about? Like say what my plans are for a future thing.

Continue Reading in the Dev Forums >>

<< Return to Devlogs

Feb 28 - Fus Ro Smash

Hey. How was your week? Cool, uh-huh, oh ok. Hey, real quick? The main focus of my week was survival essentials and a late night inspiration of crazy physics.

Quick, what was your favorite part of Skyrim? If you answered throwing shit around all over the place you're correct! I made all items and furniture have physics, so you can literally throw items onto the ground, or at things, or down hills. Furniture can be pushed around or fall down holes you dig as you're remodeling. Any piece of furniture that suffers too much force (like at the sudden stop at the bottom of your staircase) will shatter and turn into its base crafting components which all tumble about. You can make quite the mess. And I did.

Ore is spawning in small clumps under the surface, and trees can be grown and cut down for wood. That will remain largely unchanged for the farmers, but for other roles I want to make it so you never need to bother with resource collection if that's a thing you're sick of. Maybe you want to jump straight into a dungeon, or go exploring, and I think those activities should be able to support you, especially at the beginning.

Continue Reading in the Dev Forums >>

<< Return to Devlogs

February 28 - A shop your own

I worked on the new Merchant start this week which is all mostly in and available in this week's build. When you start you'll have the option of starting barebones as usual, or start in a town with your own shop. There's a new intro questline that guides you through getting items, setting prices and selling to customers, and getting used to life in the town. It's important to me in the Merchant campaign to have a game where you never feel like you need to step outside the town, and have all your needs and interests taken care of safe within the walls.

The intro ultimately culminates in dealing with the Bank and repaying your debt, which while functional, didn't quite have the personal story touch. Since that's where a lot of the beginning Merchant storyline focuses, I've left it out for now while I work on the Villager AI and personalities. Next will also be working on the core Merchant gameplay and making various balance/fun tweaks to get it all feeling right.

Also, all the hair has been redone! It should be better now. There are some further improvements that I'll be making with shaders and motion, but it looks a bit less like a big block on their head for now. The look of wood planks has been further improved as well, and feels preeeetty close to done.

Here's my plan going forward: I'm going to get the core Merchant gameplay worked out and feeling good as well as working on Villagers and personalities. After that I'll be working on the Farmer start and their core gameplay. Theeen I'll be working on dungeons and the Adventurer start. Basically a round of tweaks and polish and content to get all the playstyles feeling fun. Afterwards I can go back to worldgen improvements.

Continue Reading in the Dev Forums >>

<< Return to Devlogs

< Previous Entries << First Entry | Latest Entry >> Newer Entries >
 

Check out Rogue Legend 2 or Patreon for automatic rewards!

This website exists thanks to the contribution of patrons on Patreon. If you find these tools helpful, please consider supporting this site. Even just disabling your adblocker will help (it's only text and plain image ads I promise). Becoming a patron will upgrade your account to premium, giving you no ads and more features.

Shout outs: Stacey, Marinos Papadimitriu, Carlo Puche, Paperlegs, Timber Den, PartySheep, Matt Yates, Elisa Martinez, Ryan Flagg, JMartins, Jade Arrowood, Sean Kane, Angelo Anderson, yoland katamari, Dave Walker, Rhonda Seiter, Alexa Hobusch, Jonathan Lekse, JollyGamer, Jayden wingler, Yi Tan, Burlyfighter, Gillian Tolbert, David R Abbott, Rick Marsh, Brittany DeNicholas, Phillip Hash, Amanda Kettles, John Trent Dumproff, Lou Bliss, Pythor Sen, Michael Isberg, Nat, Cory Evans, Thomas Wilhelm, Krueger82, BestWorseCaseScenario, Damian Steele, Irate The Pirate, Icarus Unleashed, Mark L, Conall Reilly, keith oneal rogers, Patrick Natale, Cam Largent, Thaddeus Johnson, Siren, Donavan Guay, AstroLass, Sam Davis, Lizzie, Michael Hamilton, Vedie V, Mylon Schroder, Nathan, Tiffany Mathis, Jordan Florez, Robert Rich, Rodney O'Dell, Robin Ellis-Foster, Deanna Pyle, Jess, Lars Yell, Zee Livezey, Kevin, Kerry Melton, Mary Kieser, SallySparrow132, Naomi B, J, Millergendraft, Federica Frezza, Nick Soucy, Melanie Warga, Jeremiah Walker, Bryan Sheairs, Bryan Kempka, Max Hops, Sarah Holland, Joshua David Maddox, Jennifer Smith, Liz Fontain, Ray Bissonnette, Joe Dalby, Joline Tran, Nicholas Zamora, ShortyMcgibble, Mr. Vinclair, mtnman1979@aol.com, KFB_Patreon, eric sun, Dani, Bruce Willison, Gundar Wez, Nahellion, Ben Pytlik, Nicholas Hanke, bilbens baggo, Stuart, Brysen Packer, Maxwell Mayer, Gannon Dubay, Thobek, Aaron Teupe, Felix Schmäche, XMrMonkyx ., Miss Zilla M, Jordan Brazeal, Kyle Clark, Jake Lane, Adam Ruiz, Phillip P Torchia, Stefan Gottschalk's, Remora Jewel, jeremy baisch, Daniel Edwards, Zealot23, Shane Andrews, Brandon Mußiq, CJMAXP, KingHavok1217, Mx Charlie, Zachary Burgess-Hicks, Shazear, Steve Rosenlund, Leanna Orr, lufink, Ezzela1891, John Nazario, Gary, Gordon Alexander Fallon, Justin Stensgard, Jason Clark, Trey Vickory
Their contribution stands as a beacon of hope for all adventurers!

Become a patron
 
[-] Login▾

Make campaigns and save encounters / combats / dice rolls and more. One step!

Login

Username:
Password:
Forgot?

Register New Account

Username:
Password:
Recovery / Patron Email (Optional):

Gift Premium

Donate