Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411469 Posts in 69368 Topics- by 58422 Members - Latest Member: daffodil_dev

April 23, 2024, 06:29:33 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsWobbledogs
Pages: 1 ... 19 20 [21] 22 23 ... 37
Print
Author Topic: Wobbledogs  (Read 232280 times)
JobLeonard
Level 10
*****



View Profile
« Reply #400 on: December 03, 2016, 03:32:05 AM »

Are you aware of how Pico-8 shares its code? It makes a PNG that is both a screenshot and embeds all the required binary data in the channels (somehow).

http://www.lexaloffle.com/bbs/?cat=7&sub=2
Logged
kkairos
Level 0
**


View Profile WWW
« Reply #401 on: December 03, 2016, 10:06:36 AM »

I just came into this devlog for the first time a few weeks ago. This is absolutely adorable and hilarious.
Logged

Fuzzy Branch
Level 0
***



View Profile WWW
« Reply #402 on: December 03, 2016, 04:20:47 PM »

Glad it was interesting! I should probably mention that I do actually use "stop markers" for my super genes. It was the only way I could think of to get that unbounded growth and it works really well! That said, they still don't give me a solution for gene re-organization and insertion, so it's definitely not a silver bullet.

Thinking a little more about this, I suppose I could have backwards compatibility work with a sort of "version counter" gene that gets put on the front of all generated dogs. As long as it was fixed length and exempt from mutation, then every time I update the global genetics there could be code that looks at these version counters and goes through all the needed upgrades in order to arrive at the correct current version of dog! A little early for me to put this in since I don't have any dog data that needs saving, but I feel like this could end up working well.

If you end up needing to tackle this later on, another method (used in the N.E.A.T approach  http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf ) to handle crossover and recombination is to use historical ID markers for gene mutations. The basic idea is that each new gene is given an ID number so that during crossover, it's easy to match genes like-for-like, just by comparing their IDs -- It sounds somewhat like your version counter idea. It probably wouldn't integrate with your current setup without modification, but I think the general principle is sound and I've used it successfully in the past for other purposes. Just something to think about -- hope it's helpful.

You're making a lot of progress! It will be cool to see the main gameplay loop really develop.
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #403 on: December 06, 2016, 08:00:08 PM »

Are you aware of how Pico-8 shares its code? It makes a PNG that is both a screenshot and embeds all the required binary data in the channels (somehow).

http://www.lexaloffle.com/bbs/?cat=7&sub=2

I'm not, but that sounds interesting, thanks! I'll remember to look into this more when I get back around to dog sharing. Since dog genes are made up of only 3 symbols (1's, 0's, and separators), it should be very reasonable to do something like this.

I just came into this devlog for the first time a few weeks ago. This is absolutely adorable and hilarious.

Thanks so much!

Glad it was interesting! I should probably mention that I do actually use "stop markers" for my super genes. It was the only way I could think of to get that unbounded growth and it works really well! That said, they still don't give me a solution for gene re-organization and insertion, so it's definitely not a silver bullet.

Thinking a little more about this, I suppose I could have backwards compatibility work with a sort of "version counter" gene that gets put on the front of all generated dogs. As long as it was fixed length and exempt from mutation, then every time I update the global genetics there could be code that looks at these version counters and goes through all the needed upgrades in order to arrive at the correct current version of dog! A little early for me to put this in since I don't have any dog data that needs saving, but I feel like this could end up working well.

If you end up needing to tackle this later on, another method (used in the N.E.A.T approach  http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf ) to handle crossover and recombination is to use historical ID markers for gene mutations. The basic idea is that each new gene is given an ID number so that during crossover, it's easy to match genes like-for-like, just by comparing their IDs -- It sounds somewhat like your version counter idea. It probably wouldn't integrate with your current setup without modification, but I think the general principle is sound and I've used it successfully in the past for other purposes. Just something to think about -- hope it's helpful.

You're making a lot of progress! It will be cool to see the main gameplay loop really develop.

Oh very cool, thanks for the resource. Will definitely check this out! And thanks, I'm glad the progress I'm making is visible! I'm also really really looking forward to the main gameplay loop solidifying.

---

I spent some time playing the game from a somewhat realistic starting point without cheats and just kind of making notes of how things felt. I came up with a solid list of things I wanna change/fix/add to get the game into a minimum viable state, and I started in on one of those today.

One of the biggest things missing from the game right now is dog/object and dog/dog interactions. Most things dogs do at the moment are solo, and while I did have paired behaviors working at some point I had to remove them due to a refactor and haven't gotten around to re-doing them. Paired behaviors themselves are going to be a little complicated to add back in, and I'm working towards a self imposed end-of-the-month deadline at the moment for a gameplay loop, so I instead started working on allowing dogs to grab things with their mouths and toss them around.

The first pass was pretty quick to implement, but there were some obvious issues.



Dogs have very poor leverage for the most part, so they were better at tossing themselves than other objects. It did make for some pretty entertaining King of the Hill style free for alls though.



I now have the dogs planting their feet (fixed joints on feet once they're grounded, with custom break forces/torques so they don't stick too much) and torquing their bodies much more appropriately, and while the behavior still needs some work, it's looking much better and resulting in some fun situations like dogs waking each other up.



I also dynamically adjust the torque applied depending on the number of feet the dog has planted (feet won't plant if they aren't grounded), which really helps sell the effect.

The main thing I'm still looking to improve is to figure out a way to get the dog's mouth closer to what it's trying to grab. It's tough because they have such a long snout. I'm considering adding in a system to get dogs to tilt their heads, which would potentially help a lot with this, but I don't think it's immediately necessary so I'm gonna put that on hold for now.

And here's a bonus gif I caught this morning of a dog falling asleep on top of a food block.


Logged

JobLeonard
Level 10
*****



View Profile
« Reply #404 on: December 07, 2016, 01:08:10 AM »

The sleeping dog should respond cranky angry
Logged
ProgramGamer
Administrator
Level 10
******


aka Mireille


View Profile
« Reply #405 on: December 07, 2016, 12:13:34 PM »

Quote

How can something be engineered to be so perfectly adorable??
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #406 on: December 07, 2016, 06:58:45 PM »

The sleeping dog should respond cranky angry

Ah, good call. I went ahead and hooked this up to the same behavior interruption code as barking. There aren't really any unique hooks for anger yet so it doesn't really manifest in much though.

How can something be engineered to be so perfectly adorable??

Just hoping I can ultimately get goofy situations like this to come up often enough for every player to experience!

--

Huge day of tweaking for me.

As far as more noticeable things go, I did some more improvements to throwing and updated it so the direction of the throw is randomized. I think it's at a reasonable point for the time being.



The main tech thing I changed with this was how planted feet work. Previously once a planted foot had its fixed joint break, it would remain unplanted. Now the leg will periodically re-check and try to plant again until told to stop.

I was also trying to get this movement to have more of a wind up to it, but there are a few reasons why that's hard, mostly that I can't guarantee a dog has any planted feet, so I'm going to hold off on that.

I also noticed that it was really weird for dogs to lay eggs and not really have it affect their moment to moment, so now egg laying interrupts a dog's current behavior, which was immediately obvious as the right decision.



I've also started in on an update to the object info GUI view. It's proving to be pretty unacceptable for that menu to come up when you grab something; it forces you to interrupt something when you wanna check it out, it's possible to accidentally hit buttons, it's jarring, and it's limiting with respect to what sorts of things I can put in that view. I'm switching this menu for now to being accessible when right-clicking something. There's a lot of usability stuff surrounding this that I need to dive into but it already feels nicer, which is encouraging.
Logged

ProgramGamer
Administrator
Level 10
******


aka Mireille


View Profile
« Reply #407 on: December 07, 2016, 07:11:41 PM »

Quote

As comedic as the last one was adorable. You're doing a really good job on this.
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #408 on: December 08, 2016, 08:01:23 PM »

As comedic as the last one was adorable. You're doing a really good job on this.

Thank you! I'm trying my best and really want this to be great.

--

Super tiny update today, but I wanted to sneak it in since I'm going to be jumping off this project for ~2 weeks to work with some friends to help finish something up.

I did more work on the object context menu I mentioned before. I have object highlighting working now so you can actually tell which object is selected and so you get a visual cue to let you know if something you're moused over is interactable. I was gonna try and build a shader for this myself, but it quickly became apparent that it'd take a decent amount of effort to make something robust and since shaders are already not my specialty, I made my first asset store purchase.



Will definitely spend more time tweaking this, but it's functional and already helps a lot with readability while playing. For now, right-clicking something selects it and shows that special info view. An object stays highlighted when selected but you can still grab other objects, hence the second highlight color.

Anyways, that's it for a few weeks. See everyone soon!
Logged

ProgramGamer
Administrator
Level 10
******


aka Mireille


View Profile
« Reply #409 on: December 08, 2016, 08:06:13 PM »

Logged

JobLeonard
Level 10
*****



View Profile
« Reply #410 on: December 09, 2016, 01:44:53 AM »

Hahaha, my first thought as well! Love the aura effect Smiley
Logged
HIDEJI
Level 0
***



View Profile WWW
« Reply #411 on: December 17, 2016, 01:08:47 AM »

You're going to be rich someday soon. You're aware of that, right? Just keep grinding away! Beer!
Logged


If you like what you see, please help spread the word on twitter! Thank you! Beer!
coah
Level 1
*



View Profile
« Reply #412 on: December 21, 2016, 04:54:26 AM »

This project is super cool, I just want to follow it a bit easier. It's coming together really well, great work!  Blink
Logged
ActualDog
Level 3
***



View Profile WWW
« Reply #413 on: January 02, 2017, 06:34:16 PM »

Hahaha, my first thought as well! Love the aura effect Smiley

I'm glad!

You're going to be rich someday soon. You're aware of that, right? Just keep grinding away! Beer!

Haha, well that's certainly not something I'm counting on but I definitely wouldn't mind seeing this turn into a success.

This project is super cool, I just want to follow it a bit easier. It's coming together really well, great work!  Blink

Thank you!!

---

Well, I'm finally back! The other game took a bit more of my time than expected but it's mostly wrapped up at this point and today was my first day back on Wobbledogs since the last update. It feels good to be working on it again, but I left the project in a sort of awkward state so I've got a lot of larger design issues I'm trying to sort through at the moment.

Basically, I'm trying to figure out the best way to deal with the realities of dog ownership. And by that I mean how to set up a system for owning dogs and getting them into the world. Stuff like how many dogs you can own, what happens to hatched pups if you're at your dog maximum, how the player might decide which dogs they want in their pen, how to move dogs between the pen and storage, etc, etc. I think I'm close to having that stuff figured out but it'll be a lot of GUI work to get it all rolled out. That said, it's one of my largest outstanding GUI tasks and will really tie a lot of stuff together once it's in, so I'm looking forward to having it finished.

In the mean time I made some slight updates to object highlighting today, fixed a few puppy bugs, and did a tiny experiment to see what would happen if I made a dog without any legs.



Surprisingly, the game kinda supports it. I'd need to do more work around this to make it shippable (they'd need wiggling behaviors so they didn't just lay around motionless) but no systems exploded or spewed errors which I'd consider a pretty large success.
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #414 on: January 04, 2017, 08:34:15 PM »

Been working on a lil' capsule machine!

The idea behind it is that it'll act as a more physical, and hopefully fun, way of getting things into your pen. Currently stuff just phases into existence, which is fine but not as tactile as it could be.



The pipe attached to its head is gonna hopefully extend up past where the camera can see. The idea being that the capsules are getting dropped into it from some other location. When dogs get accidentally de-spawned (objects built on top of them, falling off the world, etc), they'll be popped into capsules and thrown into this machine for you to collect at your leisure. I'd also like to use it for some occasional little gifts and potentially for other objects too if it feels right.





Although I'd love to have dogs directly getting stuffed into this thing, that presents a ton of issues. Dog body sizes are unbounded so there's really no way I can ensure they'll fit into this without making the machine way way bigger than I want it to be. By abstracting it a bit and putting dogs into capsules, however, I can build a little physical machine with way more dependable functionality.



It's physically simulated similarly to actual capsule machines. Totally out of necessity, too. I was having issues with capsules getting jammed up and so I referenced real-world capsule machines to see how they avoided these issues. A little spinning agitator does the trick real nice! I do cheat a little bit still, capsules get forces applied to them after falling through the initial hole so they fly out in a more satisfying way, but I'm pretty pleased with this thing.

Still needs a few more features and some polish, but I'm very happy with how it's coming along!
Logged

ActualDog
Level 3
***



View Profile WWW
« Reply #415 on: January 05, 2017, 07:20:09 PM »

Added some legit capsule graphics and got it so they actually contain objects and you can open them up!



After recording this I also added in some bounce to when you click the crank.



Since there's some physics simulation stuff going on here I'm a little concerned with capsules escaping the globe when you do this, and it feels like the sort of thing that'll come back to bite me at some point, but for now my stress tests with it are holding solid, so fingers crossed...

Logged

DireLogomachist
Level 4
****



View Profile
« Reply #416 on: January 05, 2017, 10:41:56 PM »

Looks great!
Logged


Living and dying by Hanlon's Razor
Smerik
Level 1
*



View Profile
« Reply #417 on: January 06, 2017, 04:26:22 AM »

That looks really satisfying, opening those balls.
Logged

andy wolff
Level 10
*****


-------


View Profile
« Reply #418 on: January 07, 2017, 12:46:15 AM »

Really amazing stuff in this thread, you should be proud of yourself.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #419 on: January 07, 2017, 08:51:12 AM »

What Smerik said. Just the right level of juiciness.

It's amazing how the game starts looking better and better without losing that awkward charm it had before
Logged
Pages: 1 ... 19 20 [21] 22 23 ... 37
Print
Jump to:  

Theme orange-lt created by panic