Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411276 Posts in 69323 Topics- by 58380 Members - Latest Member: bob1029

March 28, 2024, 12:34:09 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsWobbledogs
Pages: 1 ... 27 28 [29] 30 31 ... 37
Print
Author Topic: Wobbledogs  (Read 229740 times)
JobLeonard
Level 10
*****



View Profile
« Reply #560 on: September 27, 2017, 05:48:49 AM »

Looks like the final idea is (in a nutshell) a good framework to be able to create "mission" style levels.

Add the possibility to export the resulting commercial and you have a great starting point for encouraging a community of players to share their work - as you probably know better than anyone here, people sharing their mods with furniture and whatnot were one of the things that made the original Sims so special.
Logged
Bricabrac
Level 2
**


Fail again. Fail better.


View Profile
« Reply #561 on: September 27, 2017, 10:15:49 AM »

Make the game automatically record the commercials as a ready-to-share video/GIF. YOU WILL MAKE SO MUCH MONEY TRUST ME.
Logged

Selling Sunlight - Wandering Merchant RPG
jctwood
Level 10
*****



View Profile WWW
« Reply #562 on: September 27, 2017, 11:57:49 PM »

I absolutely love this concept! It is extremely original and seems to be a good counterpart to the dog breeding/raising. I must ask, are hats confirmed? Can dogs wear hats? Looking back I see you mentioned the accessories system, that is extremely exciting! Also I like the idea that you could involve some of your earlier gameplay loop concepts in the commercials one. A dog racing commercial may require the dog to come first. A... capsule laying commercial... could require the dog to lay a capsule. I love the idea that there are a world of strange dog commercials to go along with these strange dogs.
« Last Edit: September 28, 2017, 12:04:30 AM by jctwood » Logged

quantumpotato
Quantum Potato
Level 10
*****



View Profile WWW
« Reply #563 on: September 28, 2017, 05:58:52 PM »

If you release on early access I think you will  Hand Money Left
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #564 on: September 29, 2017, 06:00:48 PM »

i love the idea of dog commercials, i haven't seen anything like it before!
if you add a sandbox mode i hope we can make our own custom commercials

Thanks! Dunno if I'll be able to support that but I'd like to try and make it as easy as possible to set up new variations without touching much (or any) code, so we'll see.

Looks like the final idea is (in a nutshell) a good framework to be able to create "mission" style levels.

Yeah, exactly!

Add the possibility to export the resulting commercial and you have a great starting point for encouraging a community of players to share their work - as you probably know better than anyone here, people sharing their mods with furniture and whatnot were one of the things that made the original Sims so special.

Make the game automatically record the commercials as a ready-to-share video/GIF. YOU WILL MAKE SO MUCH MONEY TRUST ME.

There's a lot of other things that are higher priority for me right now but I'd love to try and get some sort of in-game sharing working! I don't know very much about in-game footage capture but hopefully it's not too wild to set up or at least there's maybe some sort of asset store plugin I could use. I'd looked for gif solutions earlier and didn't find anything great but maybe video would be more reasonable? Definitely gonna look into it more at some point.

I absolutely love this concept! It is extremely original and seems to be a good counterpart to the dog breeding/raising. I must ask, are hats confirmed? Can dogs wear hats? Looking back I see you mentioned the accessories system, that is extremely exciting! Also I like the idea that you could involve some of your earlier gameplay loop concepts in the commercials one. A dog racing commercial may require the dog to come first. A... capsule laying commercial... could require the dog to lay a capsule. I love the idea that there are a world of strange dog commercials to go along with these strange dogs.

I'm glad! Hopefully I can strike a nice balance between having very distinct-feeling commercials and being able to make them relatively quick. There's a lot of ideas I wanna explore. As far as hats go I don't wanna say hats are "confirmed" because there are some issues I still need to sort out but I'd really like to have them in the game so we'll see!

If you release on early access I think you will  Hand Money Left

Ah, I've thought about early access a lot. I think the game could benefit a lot from it but there's a part of me that really wants a full initial release with all the resultant fanfare, etc. We'll see... there are benefits to both sides for sure.

--

Small update. I may have a direction I'm shooting for now but there are still a lot of base systems and features I need to implement or shore up before I can really get into making content. The past few days I tackled persistent dog ownership.

Previously I'd only save dogs that were actually in the world. If they got deleted for some reason, that was it. Now there's a temporary UI window where you can take your dogs in and out of storage and look at some of their stats. If dogs get deleted they go in the box for you to take out later. This sounds simple, and maybe it should've been, but it ended up touching a ton of systems. For example, loading a game with a bunch of dogs in storage means I need a way to get portrait sprites for all those stored dogs. Generating portrait sprites isn't the quickest thing so doing it for potentially tens or hundreds of dogs would be horrible. I added support for sprite serialization and now I serialize and reconstruct portraits rather than generating them from scratch every time and it's much faster. Of course this meant I needed to update my save/load structures and actually build a solution for sprite serialization (which I still need to add compression to). I also had to improve my portrait caching system, which was trickier than I thought it'd be, and I took the opportunity to add timeslicing to dog and portrait creation so that it doesn't give huge frame spikes. Things are in a pretty good place now, though they'll definitely need more love in the future.

Anyways, next week I'll probably try and tackle some slightly more interesting systems, which'll be nice. Like I said last time, I've got a lot of work ahead of me!

Anyways, have this gif.


« Last Edit: September 29, 2017, 09:42:22 PM by ActualDog » Logged

JobLeonard
Level 10
*****



View Profile
« Reply #565 on: September 30, 2017, 12:00:40 AM »

You could always pipe data to FFMPEG te create a video Tongue
Logged
ActualDog
Level 3
***



View Profile WWW
« Reply #566 on: October 09, 2017, 06:23:15 PM »

You could always pipe data to FFMPEG te create a video Tongue

Oh that's not a bad idea actually. Sounds like a good fallback option if I can't find an existing solution.

---

As I work on solidifying the base game flow I've been having to finally start addressing design problems I'd previously just kind of glossed over. First up is breeding and mutation. Basically, I have systems in place for these things but I don't have any solid way to interact with them. Eggs have obviously been in the game for a while but there are still issues there. How do dogs breed with each other? How do you deal with the population boom that laying eggs introduces? How do you meaningfully control or direct breeding? What's the lifespan of a dog? If the lifespan is too short will people get attached to them? If the lifespan is too long will people have any reason to play with breeding? How do I shorten the amount of time that breeding would normally take to experiment with? etc.

I don't have answers to all these questions but I do have a direction I'm exploring for now and that direction is cocoons.





The idea behind cocoons is to provide a way for dogs to continuously mutate as the game goes on without you having to churn through hundreds of individuals. I still think eggs will have a place in the game and I still think I'd like some sort of more traditional breeding but I really really want the ability for you to play long-term with specific dogs and I don't want that to lock you out of discovering new mutations. I know I just added mutation pills but I wanted a more natural and integrated solution too. What I'm thinking is that throughout the game, dogs (assuming they're in healthy shape) will continuously retreat into cocoons and mutate. I think I'll provide a way for the user to manually cancel the mutation in case they'd like the dog to stay just the way it is, but I also want to let you inject genetic mixtures into the cocoons to direct the mutations. Maybe you can even take DNA directly from another dog and crossover the genes that way.

Still exploring specifics but even if I don't end up using the cocoons as a recurring mutation vehicle I have other ideas for ways to get them in and I really love them. I think they just generally lend themselves to fun situations.

Quick technical details in case anyone's curious. The cocoons do a raycast straight up from their attachment point and attach to the first thing they come in contact with. I get them to hoist themselves up by slowly decreasing the joint's linear limit. The strings themselves are drawn after the fact. They're just a thin, white, prefab cylinder that I scale to the desired length and then rotate to intersect both the joint anchor and the joint attachment point. It was pretty much the dumbest way I could think of to do them and it works great. It'd be fun to have them actually collide with things but that creates other issues and sorta highlights the fact that they don't bend so I'm happy with leaving them alone for now.



Other than cocoons I've also been fixing some old bugs and addressing some tech debt. Biggest thing I've tackled is my object location validation and good location finder system. I've known for a while that it needed to be shored up but while working on cocoons my dogs kept spawning outside of the pen and it was really frustrating to test so I spent some time improving things.



Slowdown here is from the debug lines not the location system btw. The system now lets me specify a specific pen to contain the given object inside of (or to just keep the object inside of whatever pen it started in), and it way more accurately and efficiently searches the world for a valid location to move to. I essentially do an incremental 3D flood fill using the object's bounding box and stop searching in any given direction once it results in the object leaving the needed pen (assuming one is specified). It also obviously stops things from moving to places that'd clip with other objects. There are ways I could optimize things even more but until it becomes a problem I'm pretty happy with this current solution. Did some stress testing this afternoon and it's feeling pretty solid. Every one of the balls in this gif spawned without intersecting with an existing one.



And that's about it for now. I have a bunch of cocoon-related tasks left still to finish (UI, tuning, game flow and design, save/load) but I'm very pleased with them so far. Looking forward to getting them better integrated.
« Last Edit: October 10, 2017, 08:11:36 AM by ActualDog » Logged

Notafox
Level 0
*


View Profile
« Reply #567 on: October 12, 2017, 02:03:22 AM »

I. Love. The cocoons!! Also v scientifically accurate, so thats nice

I also appreciate that you took dog lifespan into account, the idea of my presh pup dying of old age is deeply, deeply upsetting. I'm sure you can come up with creative alternative retirement plan if you really need to take wobbledogs away.
Logged
ActualDog
Level 3
***



View Profile WWW
« Reply #568 on: October 19, 2017, 03:33:52 PM »

I. Love. The cocoons!! Also v scientifically accurate, so thats nice

I also appreciate that you took dog lifespan into account, the idea of my presh pup dying of old age is deeply, deeply upsetting. I'm sure you can come up with creative alternative retirement plan if you really need to take wobbledogs away.

Glad you like them! I'm really fond of them too and I hope they stick around.

---

Did some more work towards getting the base implementation for cocoons all set up. The two big tasks were UI and save/load.

The trick with the UI is that I wanted to have it appear in-world next to the cocoons themselves. This is easy enough but it forced me to solve a problem I'd been dealing with for dog indicators as well. I'd previously been doing my in-world UI entirely in 2D. I'd just convert the needed 3D position to screen coordinates, scale things as appropriate with the camera distance, and do a some manual depth sorting. It mostly worked great but I couldn't have those bits of UI obscured by any 3D objects (at least not without some shader trickery I'm not really up to). It wasn't a huge deal for indicators but these bits of cocoon UI really needed to exist in 3D space, specifically in the case that there were a few hanging right next to each other.

Anyways, my solution wasn't too complicated. I opted to use Unity's worldspace UI canvases with some special code that billboards the elements and allows me to specify a distance to offset the elements along the vector from their associated object's center position to the camera's position.

Aside from accidentally billboarding the dogs themselves, I got things working pretty quick.



As far as the UI's design, for now I'm just keeping it dead simple because I know it's gonna change. There's a timer and then two buttons for cancel and hatch respectively. I expect to do more iteration on this stuff in the future.

The other, larger, task was to get the cocoons working with save/load. This is one of those sorta hidden costs to everything I do in this game. I'm trying to make it as easy for myself as possible to add new things to the save/load flow but complex objects still often demand complex solutions. The specific issues with cocoons were that they have a rather complex little statemachine structure (that isn't as clean as it should be) that I have to rebuild correctly on load, and then that they also can attach themselves to any object in the game, including other cocoons. I had to do a bit of load order restructuring to get this aspect working, the cocoons specifically load in 2 steps to ensure that everything's in the world before we load their attachment data, but I'm pleased to report that they save/load in every case I could think to test at this point.



After putting cocoons on the backburner, I moved on to another large design issue I've been wanting to solve. Feeding the dogs.

Basically, how do I make that fun? Previously you'd just have to keep watch on the pen and go into the inventory to drag out more food whenever dogs seemed like they needed it. This is fine, I guess, but it's not that interesting and I can only imagine it'd get kinda old after a while, especially if you have a lot of hungry dogs mowing through food at a fast rate. Also, how do I deal with food quantity?

For now I'm operating under the assumption that there won't really be money in the game. I don't think this game needs an economy (not to mention I definitely don't want to design one), and I think it'd be more fun anyways if you have unlimited quantities of most things once you've unlocked them so that you can experiment and set up whatever types of scenarios you want.

What I've got for now is an auto-feeder object. Basically a big pipe in the wall that spits out specific quantities of food and keeps track of those objects so it can spit out more whenever they've been consumed or otherwise destroyed.



I quickly mocked this guy up with prefab shapes because that's way faster and easier for me than using blender still, but it'll get replaced with something more legit at some point. You can click on the feeder to change the quantity and type of food it dispenses, and as the game goes on I want you to be able to unlock lots of different types. The idea behind the selection GUI is that it'll show you previews of all the types of food you haven't gotten access to yet, which'll hopefully be a nice little progress indicator (personally, I'm a sucker for this stuff).



The feeder still needs save/load support (which'll be way way easier than the cocoons), and I need to figure out how it interfaces with pen placement/building, but other than that it's pretty much good to go for the time being.

I also fixed a bunch of bugs over the past week, and this morning I was able to play through several cocoon cycles without any error or warning spew, which was pretty awesome to see. Obviously things still have a long long way to go and there are some large obstacles I have to clear, but the pens seem like they're really starting to come together and this is the best I've felt about the project in a while.
Logged

io3 creations
Level 10
*****



View Profile WWW
« Reply #569 on: October 19, 2017, 03:47:37 PM »

The dogs get tangled together a lot, especially the more monstrous ones, and people really like to point out that it looks like they're humping each other.
Or you could just say they really like to "hug". Wink
https://imgur.com/gallery/bAd00
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #570 on: October 19, 2017, 11:48:43 PM »

Quote
The Beast

jesuschristhowhorrifying.jpg
Logged
foofter
Level 4
****


MAKE THAT GARDEN GROW


View Profile WWW
« Reply #571 on: October 20, 2017, 09:31:59 AM »

OMG dogs in cocoons! Just when I thought it couldn't get any better!
Logged


@_monstergarden (game) and @williamzwood (me)
See Monster Garden progress here: https://forums.tigsource.com/index.php?topic=56012.0
ActualDog
Level 3
***



View Profile WWW
« Reply #572 on: October 26, 2017, 03:35:31 PM »

Phew, just got the last of the auto-feeder content in for now.

The hold up was because I still needed to implement save/load. HOWEVER, in order to implement that I needed a way to actually put the feeders into the game other than just dragging the prefabs out in the editor, otherwise they wouldn't get indexed correctly and thus couldn't really be saved or loaded.

To do that I needed to implement a feature I've been wanting to get in for a long time, wall object placement. This involved some slight refactoring and lots of new construct mode code but I'm happy to say this feature is working and should support arbitrary new wall objects without requiring any additional code from me.



Wall objects were complex to implement because there's a lot they need to do. First of all they demand a completely new placement mode, where nodes show up inside of the pens themselves. In order to support this I had to add support for wall ghosting while in the editor so you can actually see inside of the pens you're trying to place things in. This also meant that I had to intelligently update the nodes depending on which walls were ghosted. Once that all worked I had to give the nodes directional and wall type information so that the placed objects oriented themselves correctly and knew which wall they were attached to. Then I had to make sure wall objects moved with the walls they were parented to, ghosted when those walls ghosted, and got destroyed when their owning pen was destroyed. I also did some work to space out the interior nodes so that every one of them is valid for the object you're trying to place. Essentially they have offsets so that you can place things on the furthest reaching nodes without your object clipping into the wall.

Then I had to get save/load working for these things, and THEN I could finally go back and implement save/load for the auto feeders themselves.

There's still a few missing features. Wall objects don't play nice with pen expansion, for example, but they're in a good place for now and I'm happy to move on. The other positive thing about all this is that it should be relatively simple to add in floor objects now that I have wall objects working. Looking forward to getting in some decoration content to actually take advantage of this stuff!
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #573 on: October 27, 2017, 12:55:10 AM »

That is a sweet, sweet user interface
Logged
jctwood
Level 10
*****



View Profile WWW
« Reply #574 on: October 27, 2017, 01:00:52 AM »

This looks so slick.
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #575 on: October 27, 2017, 05:05:55 PM »

Glad you guys like it. I'm pretty proud of how construct mode's been turning out, though I already know it'll need a lot of love to make it more user friendly once I'm ready for people to put their hands on it.
--

Tested out the wall object flow with a new object just to make sure everything is solid in the general case. Few tiny bugs but at this point the wall object pipeline seems pretty good! Could be more efficient, but I'd rather not build content creation pipeline tools until I'm ready to really pump out a ton of objects.


Logged

Schmolt
Level 0
*



View Profile
« Reply #576 on: October 28, 2017, 04:00:10 AM »

It's always a pleasure seeing every dev update here.
Logged
ActualDog
Level 3
***



View Profile WWW
« Reply #577 on: October 31, 2017, 10:27:16 AM »

It's always a pleasure seeing every dev update here.

Thank you!

---

Happy Halloween folks.








Logged

io3 creations
Level 10
*****



View Profile WWW
« Reply #578 on: October 31, 2017, 11:16:57 AM »


This just in:
Ghost Dog Killed by Candy!
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #579 on: October 31, 2017, 05:34:02 PM »

Ghost Dog you say?







Logged
Pages: 1 ... 27 28 [29] 30 31 ... 37
Print
Jump to:  

Theme orange-lt created by panic