Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411491 Posts in 69377 Topics- by 58433 Members - Latest Member: Bohdan_Zoshchenko

April 29, 2024, 06:39:44 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsFLIES FLIES FLIES - queer sci-fi comedy VN - Free demo on Steam!
Pages: 1 2 [3] 4 5 6
Print
Author Topic: FLIES FLIES FLIES - queer sci-fi comedy VN - Free demo on Steam!  (Read 13968 times)
JobLeonard
Level 10
*****



View Profile
« Reply #40 on: July 11, 2023, 12:15:51 AM »

Oopsie! Better not have any side-effects when evaluating conditions then! Cheesy

Do you have some kind of testing framework? Don't know if it's worth it but having some way to check for regressions of bugs fixed might be nice at least.

Also, I'm assuming you use Haxe for cross-platform support, but out of curiosity: are there no other mature Haxe implementations of decent lisps out there? Or are you doing this just for the fun of it?

(tangent: what do you think of https://www.spritely.institute/'s work? I don't write in lisps myself but I think they're doing really cool research)
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #41 on: July 11, 2023, 07:06:16 PM »

Great questions! I'll probably cross-post my responses to them on the itch.io page devlog, so I hope you don't mind being quoted on there.

Quote
Do you have some kind of testing framework? Don't know if it's worth it but having some way to check for regressions of bugs fixed might be nice at least.

Yeah, I've had automated tests set up on the language itself from very early on. I'm not the best at writing tests for features BEFORE I find problems with them, but I do cover every new bug with a test. The snippet from the last post is actually a real, working test case. (When I first posted it, the test case had a bug in it, but I didn't know that until I fixed the bug the test was testing! After I caught it, I sneakily edited the bug out of the snippet in the last post.)

I have the language tests running automatically via GitHub actions, testing my language for platform-consistent behavior when Haxe compiles it into C++, Python, JavaScript with NodeJS, JavaScript without NodeJS, and when it interprets the code as Haxe directly. I'm only compiling FLIES FLIES FLIES into C++, but I use my language (Kiss  Tongue) for tons of other projects like Visual Studio code extensions, the Firefox extensions I mentioned I'm using to scrape the authors' metadata for free assets I use, etc. which is why I don't just test as C++. I used to test for C# because I was actually integrating my language with Godot's Mono runtime (and it was working!) but I gave up on that because the Haxe team doesn't offer much support for C# compilation.

Here's the most recent test run. I don't know how much of the output is publicly visible, but hopefully it shows green at least.  Wink

In between the language and the game, there are 4 libraries I'm writing that have their own separate repos. Two of these libraries interface with HaxeFlixel to make the game itself, which makes them very hard to test automatically. They do have some tests in them that I have to run manually from my computer. One of them (hollywoo) is hard to test because it actually defines an interface (i.e. a set of functions minus the implementation) and backend for the visual novel aspects of the game. So it's hard to test because it doesn't actually do anything without the HaxeFlixel implementation library (hollywoo-flixel). I was adamant about wanting to keep the VN logic separate from the specific manner of displaying text, sprites, sounds, etc. to the player. If I ever decide I don't want to use HaxeFlixel anymore, I can "just" implement a hollywoo-x frontend for whatever engine I'm replacing it with (as long as that engine can be programmed in a Haxe target language). And I have developed certain gripes with HaxeFlixel that make me kind of want to do a hollywoo-sdl implementation, but I don't think we're at that point yet. (And I think HaxeFlixel will be easier to take to consoles, web, or mobile, than SDL--not saying I plan on doing that for this game though).

My (private) game builds are automated with a GitHub action that compiles for Windows, Mac, AND Linux, and pushes those builds all the way to Steam! I only do this for milestone builds because the repo is closed-source so each build costs github action minutes. I thought I had already devlogged about this, but I checked back and I guess I didn't!

Quote
are there no other mature Haxe implementations of decent lisps out there? Or are you doing this just for the fun of it?

You are on the mark in that I am very prone to reinventing the wheel and then discovering someone else already did it. For example when I was almost done automating the Steam builds, I found an entire github action for it here that could have saved me the trouble. But, specifically regarding other Haxe lisps out there, I did do the research and didn't find any mature, actively maintained ones. And here's a point of pride--today, the top google result for "haxe lisp" in a private window is one of mine.



True to form, though, that's not Kiss, it's the Lisp that I abandoned years ago Cheesy

Even with a lack of mature options to use, "are you doing this just for the fun of it?" is still a very valid question. I got into language design because as a lifelong writer and student of rhetoric (I even got a degree in it!) I subscribe to the idea that George Orwell expressed in 1984, which is that the language you use creates the boundaries of ideas and experiences you can have. And that applies to programming, too. I wanted the power to expand and define the boundaries of my own coding--and to weave my writing and coding closer together, potentially unifying them into the same language somehow.

But for all the grandiose dreams, mind-bending learning, and pride I've accumulated in the work...
Based on my experience and anecdotal evidence, it seems to me that if you decide to do any given project by making your own programming language, the practical cost of that choice is that the project will either flounder quickly, or take an extra 4 or so years to complete. And the reality is that 4 years also equates to a lot of money spent and life missed out on. I haven't refined the "4 years" number with data or statistics or anything--but in my case it's roughly that. Also, my projects now have a ridiculously high "bus factor" and I can't even really enlist or hire help with them now, which sucks.

Not saying I regret my choices, but yeah.  Tired

This video recently made its way to my inbox:





It's not Rust, but I think making my own Lisp puts me in the same category of ridiculous buffoonery as the video mocks. And I'm okay with that.

Quote
what do you think of https://www.spritely.institute/'s work?

I hadn't heard of that group, but I'll take a look when I get a chance and let you know.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #42 on: July 12, 2023, 12:23:59 AM »

Quote
I'll probably cross-post my responses to them on the itch.io page devlog, so I hope you don't mind being quoted on there.
Not at all Smiley
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #43 on: July 14, 2023, 12:08:57 PM »

Representation/Diversity in the game

What I'm working on today is good meaty stuff for a devlog discussion, and the way I can tell is that I'm afraid to share it and look cringey like I'm overthinking everything or getting it all wrong. Well here goes. Tears of Joy

So I'm a white queer person from Utah, not a very racially diverse place. This story (despite being full of sci-fi and absurdist elements) is written a lot from my personal experience, especially around the age for graduating high school that Finn Flynn, the protagonist, is when the story begins. My social circles were really white (and still are) but I'm committed to faithfully representing a broader range of identities, backgrounds, etc. than the ones I was exposed to growing up. I think that's part of growing as a writer, being a good person, practicing empathy, etc.

Luckily the group of people I met in Screenwriting classes were more diverse and queer than a lot of my classes, and enough of them were impressed with my early drafts for FLIES FLIES FLIES that we've now become good friends and I can ask them to help me with better representation in the writing, and also, voice acting!

My friend who is voice-acting for Finn, is Chinese on their mom's side. I had written the character as white with 2 white parents, but having found a talented trans person to portray this character, I knew it was worth doing re-writes to fit the character to the person. So I did that, but for the longest time I've been procrastinating something that's been nagging at the back of my mind for months... which is that I don't think I've ever seen an Asian person with reddish-brown hair like Finn's character sprite:



Before I say much more, I should give credit to the creator of the character sprites I'm using. They're all from sprite packs I purchased on itch.io by PixelJustice. I'm really happy with these packs and there have been enough portraits for all the characters I have planned. It's just that I had chosen this one for Finn before I re-wrote the character. Now this sprite is in both trailers I've released and also appears on the Missing Persons poster in episode 1, which pops up again in episode 2 crumpled up, which I achieved by printing in black and white, then physically crumpling it. So to change the character sprite I'd have to re-do the printing, crumpling, and scanning process. And my printer is out of ink and I can't afford new ink.



So I started googling, first of all to see if I was being stupid and uneducated about hair color genetics. This Quora thread showed me that yes, Asian people can have brown hair and blue eyes:



That said, if I can't remember seeing it in the States, maybe it is rare for Asian Americans? Bottom line, I could probably leave it the same. I'm a little worried that people would assume the character is white, though, based on just the pixel art, and there not being direct references to Finn's mom or Finn's ethnicity in the first episode.

This brown also doesn't match my friend's natural hair color, or the hair-color of my friend who will be playing Finn's mom (Rosalyn). This is the spritesheet I've chosen for her:



I figure making the portrait look more like the actor is as good a reason as any? And I can change the palette of Finn's hair without having to redo the crumpled poster, which is black and white, after all. So I used the eyedropper tool to extract the palette from Rosalyn's sprite, and started applying it on top of Finn's hair to see if it would look ok:

(a partly done frame)



(a finished frame)



Then I realized Finn's lips are red and Rosalyn's aren't. The darker hair even calls more attention to Finn's lips, and it looks like Finn is wearing "feminine" lipstick which Finn, a trans man, would probably not be wearing around the house. (Not saying lipstick is necessarily gendered--but I don't think Finn would like it.)

Here's Finn with the skin-tone lips taken from Rosalyn's sprite:



What do we think? Does it still look good? Is this better representation? Did I need to worry in the first place? I'm gonna have to keep thinking about it and seeking feedback before I make a decision.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #44 on: July 15, 2023, 09:52:42 AM »

Hey guess who also is Chinese on their mom's side Cheesy

I got the stereotypical dark hair and brown eyes though - although allegedly my beard used to have shades of red in it (I've never seen it due to my color blindness), and I guess my hair gets naturally curly when it's longer which is also a bit against stereotype (but that's basically something I got from my dad).

Cool to hear you have friends from screenwriter class to help out with the project, sounds like a fun community Smiley
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #45 on: July 20, 2023, 11:28:13 AM »

How fortuitous! Maybe if I screw anything up you'll catch me in time.  Coffee

I did one more palette swap for a brown-eyed version, which I think will be the final:



I've also been scouring the internet for free photos and sprites for new characters, props, etc. for episode 2. I wrote that the roboticist George Flynn drinks "Mad Scientist Cola", and my first instinct was to photoshop over a photo of a soda can for that. But I'm not very good in Photoshop, so I decided it would probably look better if I started with a pixel art base. I found this set of sprites on OpenGameArt.org, which contains a soda can:



For the mad scientist vibe, I made the bubbles green and added a stripe with the label on it. To fit the text onto the very lo-fi sprite, I scaled the pixel art up by 10x and I hope the resolution-mismatch doesn't bother any pixel art purists too much.



I'm not colorblind, but, thinking of you, @JobLeonard, I glanced this over and formed a hunch that the red text on green background would be troublesome for at least someone out there. Even to me it kind of strains my eyes even though I can't explain why. So I just made the text black.



For my next trick, I had to figure out how to introduce Dr. Crawford, a wheelchair-bound high school Biotech teacher who first appears in episode 2. In episode 1 every character is just a face portrait, which doesn't give you any information about body type or disability. I can't afford to render a full body for every character, which means Crawford will be getting some special treatment if I show him full-body. I'm hoping I can pull that off without causing too much of an "othering" effect visually. For example, I think it would be bad if every character had facial expressions, but Crawford didn't because the body and wheelchair take up all the space or I can't afford to get multiple full-body frames drawn, etc.

For the wheelchair, I found this set on OpenGameArt:



I knew I could use that wheelchair, but the human sprites made to go with it were all split up into interchangeable body parts, hair styles, accessories, etc. in a way that was too overwhelming to figure out. (Impressive and useful for other purposes, though!)

So I grabbed a full-body sprite from the same asset pack as the portraits:



And I decided to try manually combining the body and the wheelchair into one sprite for Crawford.



Again, I have violated the rules of pixel art by scaling the wheelchair and the person by different amounts and combining them.

There's no room for facial expressions on that sprite, but every full-body sprite in the sprite pack I'm using corresponds to an animated face. This is the one for that body:



So what I'm thinking is, Crawford will enter scenes in the full-body form to establish his disability, but when he talks it will switch to the portrait so he can emote to the same degree as other characters.

It's tough making these compromises to bring the story to life. My inner critic wishes the whole thing were animated by professionals, and won't shut up about it. The realist in me knows I have to settle for things looking "good enough" and simply conveying the information that's required for the story, tone, and jokes to land.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #46 on: July 21, 2023, 01:34:53 AM »

Eh, I've seen nothing remotely worrisome so far, so relax Smiley

I actually can be a bit of a purist with pixel art, but it really depends on how the game presents itself. Basically, if it pretends to be low-res, then it breaks my suspense of disbelief if the implied low-res pixel grid is ignored (it also usually means the game isn't optimized very well, but that's less important).

Here however the game is consistently not suggesting or respecting any imagined pixel grid, it's just that the assets are low-res and pixelated. That's fine because no promised illusion or in-world logic is broken.
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #47 on: July 21, 2023, 05:45:13 PM »

I re-recorded the trailer with some notable changes:





- The new sprite for Finn.
- A new voice actor, Danny Borba, for Miguel! I'm sad that my friend Milo had to bow out of the role, but super happy with Danny's performance.
- A series of cryptic noises over a black screen during the night before Finn becomes Flyman.
- Emphasized words, which were like *this* before, are now highlighted in color. I'm pretty sure this is a bad change, actually. Or at least, the highlight color should be configurable because I'm guessing some colorblind people won't be able to tell some words are highlighted the way it is now. But I'm ready to be done redoing the trailer so !!! It is what it is!!!  Tired
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #48 on: July 23, 2023, 08:03:02 AM »

So no short teaser trailer planned after all?
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #49 on: July 23, 2023, 11:24:49 AM »

I'm still gonna do that one, but it requires video editing (my nemesis) so I've been putting it off.
Logged

nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #50 on: July 23, 2023, 01:54:40 PM »

Ok here is a first draft of the snappy version



Logged

JobLeonard
Level 10
*****



View Profile
« Reply #51 on: July 24, 2023, 10:49:15 AM »

Nice! Grin
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #52 on: July 24, 2023, 08:43:14 PM »

Feeling on a roll after making the short trailer, I pulled a marathon today and filled out everything for the Steam page. I hate this part so much that I just needed it done. And now It's submitted for review! So we'll see, in "3-5 business days", if I'll be sharing a link where y'all can wishlist the game.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #53 on: July 24, 2023, 10:35:17 PM »

Ah, the good old "ok now that I'm in the doing-things-I-hate mode I will make that most of it"-zone. Sounds like you made good use of it!

Good luck with the steam page!
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #54 on: July 25, 2023, 08:49:05 AM »

Yeah, I'm glad I did it, and also, I'm totally wiped out now. Calling today a rest day.

- Babysitting a couple of DOGS DOGS DOGS.
- Reading this new blog post by Jeff Vogel and hoping my release goes well enough that I don't end up having to write a public apology.
- Might play some Avadon 3 while I'm at it
- And Tears of the Kingdom
- And watch Abbott Elementary
- And some Preserving Worlds

If I can get all of that done it will be a really productive day.  Coffee
Logged

nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #55 on: July 25, 2023, 05:07:24 PM »

Valve bounced it back to me today with some change requirements. This was really frustrating so I dropped everything to resolve the problems immediately and I hope they approve it now. I'm burnt out on this process because Valve demands so many different high-res and low-res assets for the store page, and since I'm mostly cobbling the visuals together without an artist on the project, each asset is a big ask. itch.io makes it SO MUCH EASIER--too bad I've only sold like 3 game copies on there total. (Not counting bundles--I've had my itch products in some wildly well-selling bundles for charities and people still download them from time to time). Steam has such a fun monopoly on PC game sales, gotta love it!

I  started to cool off a bit while making the store page changes and I guess there's at least 2 counterpoints to my annoyance: 1) Valve knows way more about selling games than me, and their guidelines will probably help the game do better. 2) They did the review in under 24 hours and I can be grateful that it was done so fast.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #56 on: July 26, 2023, 01:01:23 AM »

Does it matter how quickly you reply to the requests? If not you could plan to wait until you have (most) the assets just fall out of the regular dev process
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #57 on: July 26, 2023, 07:58:22 AM »

I have some wiggle room, but it does matter, because the store page has to be out for a specific amount of time before you can release. (I hope I'm not breaking the NDA by saying that much  Who, Me?) And I'm trying to get it (the store page) out before a vacation trip at the start of next month. I also hope to use wishlist numbers to give me a more solid estimate for how much it might sell at launch, because right now my only metrics are view counts on Itch, TIG, and YouTube. View counts for the new trailers on YouTube are extremely low, and I'm really hoping that's because it doesn't count views through embedded the video players of the dev logs.

Approaching 5000 views of this thread on TIGSource right now, I'm still wondering: How many people are just clicking every log to clear the flashy NEW off of every thread? (I used to do that as a kid on forums all day) How many are skimming one post and deciding they're not interested? How many (if any) read every post, anticipating the game and ready to buy it? I can un-scientifically calculate a conversion ratio between view count on my last Steam game devlog and the sales numbers which I'm not allowed to share because All Hail the Steam Monopoly NDA I signed. Then I have to start doing fuzzy reasoning about whether FFF's elevator pitch and original writing are as big a hook as being an indie Lovecraftian game back before there were a million of those on Steam, whether having to put the last game through Greenlight was an important part of building an excited audience pre-release, etc., and there are really no good answers to those questions. But I do think getting the store page out ASAP is important, because that's like the closest equivalent of that Greenlight marketing window my last game had that this one won't.

I'm not as salty as I might sound about all this, just hoping against hope that my modest passion project might sell well enough to give me a more solid footing in life right now when it feels like my only option in the near future is to throw myself into the recession-era tech job market everyone I know is (rightfully) complaining about.

EDIT: Oh, and to your suggestion about waiting till the assets emerge naturally: There is one in specific with a required resolution of 3840x1240 that will never emerge out of the dev process on its own, because that's way off from the aspect ratio of the game and I don't have any panoramic backdrops planned.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #58 on: July 27, 2023, 05:14:49 AM »

Thanks for the info!

(what an oddly specific requirement for a screenshot)
Logged
AdamM
Level 0
**


View Profile WWW
« Reply #59 on: July 27, 2023, 10:50:45 AM »

The premise of this is super interesting. I’ve never really played a VN aside from Newgrounds stuff ages ago, but I’ll keep an eye on this.
Logged

Pages: 1 2 [3] 4 5 6
Print
Jump to:  

Theme orange-lt created by panic