Compare commits

...

149 Commits

Author SHA1 Message Date
C22 741aee6c5e On branch Monster-Update-6
Changes to be committed:
	modified:   game/script/13A.fang-loses-it-after-losing-prom-queen.rpy
	modified:   game/script/13C.fang-and-anon-go-to-beach-and-prom.rpy
	modified:   game/script/13D.fang-plays-well,-naomi-jealous,-fang-talks-to-anon-to-break-up-while-she-thinks-about-her-life.rpy
	modified:   game/script/6.anon-helps-fang-find-a-venue-for-band.rpy
	modified:   game/script/8.anon-and-fang-study-together.rpy

formating and speling fixs. WHERE DID THE BLOOMIN MAIN REPO GO?!
2021-09-27 12:26:02 +13:00
Nutbuster 27701654a0 Merge pull request 'Choreography update for chapters 1-5' (#67) from Bowie/SnootGame:chapter-5-choreo into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/67
2021-09-07 23:49:56 +00:00
Bowie 64f372695d Merge branch 'Monster-Update-6' into chapter-5-choreo
# Conflicts:
#	game/script.rpy
2021-09-07 17:19:21 +01:00
MichaelYick f89079d471 Merge pull request 'Closes #72' (#76) from newAmberlight into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/76
2021-09-03 16:37:14 +00:00
MichaelYick f5a7093112 converted to ogg 2021-09-03 11:37:08 -05:00
MichaelYick 0eac5d3c36 new music for D ending 2021-09-02 19:19:14 -05:00
MichaelYick 4ae29ac5fd Merge pull request 'Remove text0.png duplicate' (#73) from nutbuster/SnootGame:insult_layer into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/73
2021-09-02 23:33:19 +00:00
Nutbuster b886497f89 Remove text0.png duplicate 2021-09-02 12:19:51 +10:00
Bowie e9569a83c6 stash changes, add new orange attack SFX 2021-08-14 22:25:43 +01:00
Bowie 3a6acbb2ff feedback changes, refactor narrator, add Fang bikini CG to ch5 2021-08-14 13:37:23 +01:00
Nutbuster 60a6f8acac Merge pull request 'UI Sounds v2' (#71) from nutbuster/SnootGame:nio_mustard into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/71
2021-08-08 03:32:29 +00:00
Nutbuster c90faec1d1 Add Right Click to escape Gallery & Help messages 2021-08-08 13:04:38 +10:00
Nutbuster 798ff85ff6 Merge fix 2021-08-08 08:31:00 +10:00
Nutbuster 3b401ccf1c Merge remote-tracking branch 'origin/Monster-Update-6' into nio_mustard 2021-08-08 07:44:33 +10:00
Nutbuster ad87c2730a Glue Gitignore 2021-08-08 07:16:04 +10:00
Nutbuster 8b47b1f3f8 variant Button fix 2021-08-08 07:12:30 +10:00
Nutbuster e5c5b6fbe9 standardize and minify py-related functions
also includes transitions fix
2021-08-08 07:11:24 +10:00
Nutbuster a4afd458d2 untrack misc files and restore old changes to gitignore 2021-08-08 07:10:56 +10:00
Nio d82571ffe9 smaller wav files 2021-08-08 03:11:08 +10:00
Nio 46344e7f3a added uirollover to choices 2021-08-08 02:56:14 +10:00
Nio 09195d2919 autoupdate readded, sry 2021-08-08 02:32:14 +10:00
Nio 5220b7fbb6 new options audio files 2021-08-08 02:23:16 +10:00
Nio 61dc7dd796 removed dummy vars and removed custom togglers toggling, also accidentally added junk files, sry 2021-08-08 02:13:30 +10:00
Nio 16e8e5a72a sounds revamp 2021-08-08 00:42:16 +10:00
Nio d59f59ca88 update to MU6 2021-08-07 19:51:40 +10:00
Nutbuster 2e03d41097 Merge pull request 'Outline color & thickness' (#68) from nutbuster/SnootGame:Monster-Update-6 into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/68
2021-08-06 20:29:25 +00:00
Nutbuster e7f3e70b92 Black -> White 2021-08-07 06:11:26 +10:00
Nutbuster 24ef384443 Add all of the characters 2021-08-06 09:55:14 +10:00
Nutbuster aae7c961d3 Revised color codes & Minor name fixes 2021-08-06 09:47:52 +10:00
Nutbuster b1cdf38707 Merge branch 'Monster-Update-6' of https://git.snootgame.xyz/Cavemanon/SnootGame into Monster-Update-6 2021-08-03 11:37:43 +10:00
Nutbuster c723cb19f3 Merge pull request 'Closes: #61' (#70) from nutbuster/SnootGame:nio_mu6 into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/70
2021-08-03 01:36:27 +00:00
Nutbuster 2c9bfdfb1e Merge Fix 2021-08-03 11:29:47 +10:00
Nutbuster d2d9591339 Merge remote-tracking branch 'origin/Monster-Update-6' into nio_mu6 2021-08-03 11:23:24 +10:00
Nutbuster 9bed598168 Modify thicker Outlines 2021-08-03 07:39:36 +10:00
Bowie 52ca7a0a10 add CTC icon to ch5 monolgue lines 2021-08-02 18:21:00 +01:00
Bowie e90fd9d48b fix minor lint warnings, add missing sound effect 2021-08-02 14:47:00 +01:00
Bowie 8bd3a58d18 Merge branch 'Monster-Update-6' into chapter-5-choreo
# Conflicts:
#	game/script.rpy
#	game/script/1.first-two-days-anon-meets-fang.rpy
#	game/script/2.fourth-day-of-school.rpy
#	game/script/5.fang-and-anon-cut-class-to-talk-on-the-roof.rpy
2021-08-02 14:38:11 +01:00
Bowie 8647f53355 ch3 alterations from feedback 2021-08-02 13:10:28 +01:00
Bowie 81c39c9dad rework ch5 roof scene & chapter end 2021-08-01 20:48:46 +01:00
Bowie 89249c60ed rework ch5 buildup to roof scene 2021-08-01 11:56:49 +01:00
Bowie be0a7ccf73 rework ch5 gardening conclusion 2021-07-31 19:10:38 +01:00
Bowie cecd74c366 rework ch5 carpark scene 2021-07-31 11:00:55 +01:00
Nio 8f6393ab79 new mixer 2021-07-29 20:47:12 +10:00
MichaelYick 666ecea915 Merge pull request 'Android Port' (#64) from nutbuster/SnootGame:Monster-Update-6 into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/64
2021-07-29 04:39:02 +00:00
Nio 665ee694ba channeld 2021-07-28 12:27:26 +10:00
Nutbuster 1efc015419 xmax ymax spacing Quick buttons 2021-07-28 09:05:31 +10:00
Nutbuster 2e32d74aec Move main menu buttons ypos 2021-07-28 08:54:22 +10:00
Nutbuster 0bdd5b3b06 Smaller mobile namebox font size 2021-07-28 08:47:13 +10:00
Bowie 682921fef5 finish ch5 gardening scene rework 2021-07-27 22:01:57 +01:00
Bowie 8c430b8d09 fix stella being absent from the ch5 gardening club lineup scene 2021-07-26 17:50:51 +01:00
Bowie f26f3811dc rework ch5 opening and vines scene 2021-07-25 22:01:13 +01:00
Bowie c7a2c5b692 further tidying before ch5 start 2021-07-25 13:34:52 +01:00
Bowie 143ea72ea5 fix missing text tags 2021-07-24 17:26:33 +01:00
Bowie e08c58881d add missing sound effect 2021-07-24 17:24:35 +01:00
Bowie 792fa8a288 add extra ambient channel 2021-07-24 17:19:53 +01:00
Bowie 31e5c61be9 Map's sfx updates 2021-07-24 17:18:54 +01:00
Bowie 2dc8d59690 Map's audio updates for chapter 4 2021-07-24 17:14:06 +01:00
Bowie d3514e53e8 Map's audio updates for chapter 3 2021-07-24 17:13:20 +01:00
Bowie a23fe3d159 Map's audio updates for chapter 2 2021-07-24 17:08:39 +01:00
Bowie 213b215d8a Map's audio update for chapter 1 2021-07-24 17:06:17 +01:00
Nutbuster 4a21554c0e gitignore .android.json 2021-07-24 11:34:42 +10:00
Nutbuster bdb89a6c37 Update PP5 to MU6 2021-07-24 11:11:24 +10:00
Nutbuster 744d6dfbf9 Merge branch 'Monster-Update-6' of https://git.snootgame.xyz/Cavemanon/SnootGame into Monster-Update-6 2021-07-24 11:10:11 +10:00
Nutbuster c9b7222d13 Remove updates func and menu from mobile 2021-07-24 11:07:35 +10:00
Nutbuster 66c0dc8d80 Add Return button 2021-07-24 10:58:01 +10:00
Nutbuster 17d669bd83 Add Android icon & background 2021-07-24 10:58:01 +10:00
tick bumley a17d382802 Merge pull request 'Closes: #50 Add Mod Support' (#51) from nutbuster/SnootGame:Monster-Update-6 into Monster-Update-6
Reviewed-on: https://git.snootgame.xyz/Cavemanon/SnootGame/pulls/51
2021-07-24 00:08:50 +00:00
Bowie 1ffd4bbb0e rework ch 4 scene where Fang helps Anon, finish ch 4 first pass 2021-07-22 18:27:18 +01:00
Nutbuster a39c3c24e2 Merge branch 'master' into Monster-Update-6
Move mod_menu into it's own file in src/
2021-07-22 21:28:18 +10:00
Nio 8ca825cda6 sounds but no dedicated channel control 2021-07-21 00:40:39 +10:00
Bowie 9cbe06a8c6 rework ch4 auditorium lunch scene, rename anon grin 2021-07-18 21:32:21 +01:00
Bowie 680221f7a8 rework ch4 opening scene, add new cafeteria ambience 2021-07-18 13:55:22 +01:00
Bowie 22d05bcbcc add ch4 todos from sound direction doc 2021-07-18 12:06:22 +01:00
Bowie 519094226f add CTC to chapter 4 monologue 2021-07-18 11:42:59 +01:00
Bowie f59174c5d8 slightly increase speed of end fade out 2021-07-17 20:18:02 +01:00
Bowie 9f83c08ed9 add CTC to ch3 monologue 2021-07-17 20:12:23 +01:00
Bowie a0749fc318 rework ch3 band practice scene 2021-07-17 20:10:42 +01:00
Bowie ec222164c7 actually add the new trish sprite fml 2021-07-17 08:33:38 +01:00
Bowie aa3a393873 stash ch3 auditorium changes, add new trish sprite to previous scenes 2021-07-15 23:57:20 +01:00
Bowie 322beeb6dd rework ch3 band room scene 2021-07-15 19:25:28 +01:00
Bowie d91401b6ac rework ch3 Anon runs into Stella 2021-07-14 21:40:52 +01:00
Bowie 4493cd8e1b rework ch3 Naser exhaustion scene 2021-07-13 22:40:59 +01:00
Bowie ac78a51e56 rework ch3 classroom scene 2021-07-12 22:19:31 +01:00
Bowie 104b63d1bf quality booster for chapter 1 2021-07-11 15:22:56 +01:00
Bowie ab94de8bd8 minor tweaks 2021-07-11 12:30:19 +01:00
Bowie d13087d86b switch RED ALERT sfx to police siren 2021-07-11 11:09:29 +01:00
Bowie 5830fdad8d fix missing spaces in a few places where 'extend' was used 2021-07-11 10:50:57 +01:00
Bowie d2ecb69f1c finish ch2 first pass, add SFX from gdrive 2021-07-10 19:29:47 +01:00
Bowie fbd3eacc33 add yet another missing sound effect 2021-07-09 21:04:13 +01:00
Bowie 6f75382f66 add missing ambient track 2021-07-08 23:46:53 +01:00
Bowie 9e19298144 stash ch2 changes 2021-07-08 23:10:54 +01:00
Nutbuster 9fa26bc67b Misc template fix 2021-07-06 14:25:16 +10:00
Nutbuster 0c4aab6858 Namebox is default long 2021-07-05 10:14:46 +10:00
Nutbuster 0959d0f275 Documentation for modders & empty create directory 2021-07-05 10:06:55 +10:00
Nutbuster cd780dfa36 Clean up Mod Menu and other details 2021-07-05 09:35:56 +10:00
Nutbuster 400d305f23 Change Mods folder struct, everything is contained 2021-07-05 04:37:26 +10:00
Bowie 528be7f2c8 clean up 2021-07-04 19:06:52 +01:00
Bowie d439bfc005 move CTC indicator to end of text 2021-07-04 16:49:16 +01:00
Bowie 3a41a71118 Merge branch 'Monster-Update-6' into chapter-1-choreo
# Conflicts:
#	game/script.rpy
2021-07-04 16:37:03 +01:00
Bowie 8b980c00c0 make CTC indicator less intrusive 2021-07-04 16:33:50 +01:00
Bowie 19bad8b682 mix up slapstick SFX 2021-07-04 16:18:46 +01:00
Bowie 1c49e00b94 replace classroom anxiety SFX 2021-07-04 16:00:51 +01:00
Nutbuster 76e3212bf1 Remove trailing backspaces & vbox instead of grid 2021-07-04 19:51:24 +10:00
Nutbuster c1e7fd2bbf Add Error Message for not having Mods 2021-07-04 19:00:39 +10:00
Nutbuster f9edccabd4 Add Mod Support 2021-07-04 16:21:04 +10:00
Bowie 981b7df998 crunch some sounds 2021-07-03 20:41:06 +01:00
Bowie 5335540d0b remove unused effect 2021-07-03 18:39:32 +01:00
Bowie c3c7b3b753 add missing punch to Naser's outburst 2021-07-03 17:08:48 +01:00
Bowie f7db5fb407 Merge branch 'Monster-Update-6' into chapter-1-choreo
# Conflicts:
#	game/script.rpy
2021-07-03 15:52:39 +01:00
Bowie 0df8dd9f94 fix line in canteen scene 2021-07-03 15:44:06 +01:00
Bowie 7832a18822 more ch1 tweaks before looking at ch2 2021-07-03 15:34:06 +01:00
Bowie 9290b34829 add missing scene after bench scene, SFX uplift 2021-07-03 14:02:55 +01:00
Bowie e19566dfa8 replace bell sound 2021-07-03 10:12:53 +01:00
Bowie bc4c4a2304 add ambience to reflective scene after concert 2021-07-02 22:11:04 +01:00
Bowie 56fe353dd8 SFX uplift for pizza scene 2021-07-02 22:01:58 +01:00
Bowie cd44add13d cleanup, add more TODOs 2021-07-02 21:40:41 +01:00
Bowie 83b680efe1 SFX & music tweaks, TODOs for missing scene after Anon meets Naser & Naomi 2021-07-02 21:19:06 +01:00
Bowie 6ae319c6ce lined up end of ch1 with start of ch2 2021-07-01 21:17:38 +01:00
Bowie 075743f063 music changes to some ch1 scenes, add another music channel for crossfade effect 2021-07-01 21:09:46 +01:00
Bowie e1eee3852d Naser gives fewer fucks when blocking Trish, volume control back up, added outdoor ambience, converted some SFX to .ogg format 2021-07-01 18:40:10 +01:00
MichaelYick 095299b9ba Merge pull request 'https://git.snootgame.xyz/Cavemanon/SnootGame/issues/41#issuecomment-585' (#2) from Cavemanon/SnootGame:pr/41 into chapter-1-choreo
Reviewed-on: https://git.snootgame.xyz/Bowie/SnootGame/pulls/2
2021-06-29 06:05:54 +00:00
MichaelYick e77bcbb9a3 https://git.snootgame.xyz/Cavemanon/SnootGame/issues/41#issuecomment-585 2021-06-29 01:01:03 -05:00
Bowie fe1391a8a0 made trish shorter when confronting Naser 2021-06-28 21:52:46 +01:00
Bowie f26f6a33fd Merge branch 'Monster-Update-6' into chapter-1-choreo
# Conflicts:
#	game/script.rpy
#	game/script/1.first-two-days-anon-meets-fang.rpy
2021-06-28 20:57:01 +01:00
Bowie 98275a6cfe slight change to crowd noises at the failed concert 2021-06-27 15:36:02 +01:00
Bowie 66e3ab693b yet more ch1 tweaks 2021-06-27 13:14:53 +01:00
Bowie 6828f773d6 add Spears roar to concert aftermath 2021-06-27 12:37:23 +01:00
Bowie 22d44dcc74 fix Naser posessing naomi for a single line of dialogue 2021-06-26 20:58:55 +01:00
Bowie b03361b476 change CTC icon to start off at min alpha instead of max alpha 2021-06-26 20:24:32 +01:00
Bowie f687e6a032 fix minor continuity error 2021-06-26 19:58:32 +01:00
Bowie c0b49eea9c more minor timing tweaks 2021-06-26 19:35:17 +01:00
Bowie 799f07d0e4 add CTC to inner monologue 2021-06-26 18:15:21 +01:00
Bowie d9e46a6135 timing tweaks 2021-06-26 18:09:53 +01:00
Bowie 6de77d3c61 finish first pass of chapter 1 2021-06-26 17:32:32 +01:00
Bowie 3aac53c8b7 minor tweaks to Spear's office scene 2021-06-26 15:18:42 +01:00
Bowie 3fd3895178 rework quick route to Spear's office 2021-06-26 15:10:03 +01:00
Bowie 6e7e9ac7d7 merge both routes through Spear's office into one with the appropriate dialogue variation, rework Spear's office scene 2021-06-26 13:51:28 +01:00
Bowie a22aa136cb change CTC icon, add ambient sound channel, rework 'nasers a bro' scenes 2021-06-26 12:41:19 +01:00
Bowie 468f367261 rework anon's morning routine 2021-06-24 22:32:48 +01:00
Bowie 3af087ee77 rework concert disaster & subsequent run in with Spears 2021-06-24 21:05:45 +01:00
Bowie 541645f810 rework meeting Spear, Naser's heart-to-heart, add placeholder support for CTC, add support for ambient sound loop channel 2021-06-24 19:47:45 +01:00
Bowie 6316d33c1f finish canteen rework 2021-06-21 22:59:04 +01:00
Bowie f56c5dc80b rework canteen opening 2021-06-21 22:03:37 +01:00
Bowie 6c07424023 make Anon's first class more unpleasant, start reworking canteen scene 2021-06-20 22:20:18 +01:00
Bowie 8c3bf9e54c rework choreo for Anon's first class 2021-06-20 17:16:30 +01:00
Bowie 60a04b8daa add spotlight effect during Fang introduction 2021-06-20 16:17:16 +01:00
Bowie b4e561e1d7 minor tweaks 2021-06-20 12:43:13 +01:00
Bowie f6b55addfa rework choreo up to first meeting Naomi & Naser 2021-06-20 12:27:09 +01:00
Bowie b86cac340b add basic utility for debugging game variables 2021-06-19 14:36:02 +01:00
97 changed files with 9750 additions and 3438 deletions

39
.gitignore vendored
View File

@ -1,9 +1,9 @@
# IToddler files
# macOS-related files
.DS_Store
.AppleDouble
.LSOverride
# Windows cancer
# Windows-related files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
@ -15,19 +15,42 @@ ehthumbs_vista.db
/traceback.txt
/errors.txt
/log.txt
log.txt
errors.txt
traceback.txt
#Vim swap files
.sw?
*~
*.bak
#save files & cache files
/game/saves/
/game/saves/*
/game/cache/*
/game/cache
saves
tmp
cache
env
#binary files
*.rpyc
*.rpyb
*.rpymc
*.pyc
*.pyo
#Vim (best text editor) swap files
.sw?
#cache files
/game/cache/*
#save files
/game/saves/*
#binary files
*.rpyc
*.rpymc
#backups
*.bak
#android
.android.json

View File

@ -6,3 +6,5 @@ WoodSnap.wav - "Snapping, Wooden Fence, N.wav" by InspectorJ (www.jshaw.co.uk) o
firealarm.ogg - "School Fire Alarm" by Cullen Card
shot.ogg - "38 Caliber Gun Shot 5x" by Mike Koenig
wind.wav - "Wind" by Mark DiAngelo
punch.ogg - "Strong Punch" by Mike Koenig
menacing.ogg - "Scaryscape 01" by Suonho (soundcloud.com/suonho) of Freesound.org

BIN
android-icon_foreground.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

BIN
android-presplash.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
game/audio/ui/uiBack.wav Normal file

Binary file not shown.

BIN
game/audio/ui/uiClick.wav Normal file

Binary file not shown.

BIN
game/audio/ui/uiFail.wav Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -78,7 +78,8 @@ define gui.text_size = 42
## The size of character names.
define gui.name_text_size = 45
define gui.name_text_outlines = [ (absolute(1.5), gui.name_outline, 0, 0) ]
define gui.name_text_thickness = absolute(2.0)
define gui.name_text_outlines = [ (gui.name_text_thickness, gui.name_outline, 0, 0) ]
## The size of text in the game's user interface.
define gui.interface_text_size = 33
@ -121,11 +122,9 @@ define gui.textbox_yalign = 1.0
## The placement of the speaking character's name, relative to the textbox.
## These can be a whole number of pixels from the left or top, or 0.5 to center.
define gui.name_xpos = 350
define gui.name_xpos = 395 #350
define gui.name_ypos = -85
define gui.name_large_xpos = 395
## The horizontal alignment of the character's name. This can be 0.0 for left-
## aligned, 0.5 for centered, and 1.0 for right-aligned.
define gui.name_xalign = 0.5
@ -447,14 +446,14 @@ init python:
## Font sizes.
gui.text_size = 44
gui.name_text_size = 48
gui.name_text_size = 46
gui.notify_text_size = 38
gui.interface_text_size = 45
gui.button_text_size = 45
gui.label_text_size = 51
## Namebox
gui.name_xpos = 345
gui.name_xpos = 395
gui.name_ypos = -85
## Adjust the location of the textbox.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

View File

Before

Width:  |  Height:  |  Size: 317 KiB

After

Width:  |  Height:  |  Size: 317 KiB

View File

Before

Width:  |  Height:  |  Size: 317 KiB

After

Width:  |  Height:  |  Size: 317 KiB

View File

Before

Width:  |  Height:  |  Size: 321 KiB

After

Width:  |  Height:  |  Size: 321 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 376 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 KiB

BIN
game/images/vfx/iris.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 827 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

54
game/mods/README.md Normal file
View File

@ -0,0 +1,54 @@
The game loads an alternate storyline.rpy, this allows you to control the flow of the game's storytelling
Examples include:
- You want to inject more stuff inbetween chapters, maybe you hate time skip writing
- You want to have more of an after story kind of ordeal, for example expanding Ending 2
- You want to replace the entire story route
You can still call the vanilla game's chapters like the intro (call chapter_1) for example but you might want to either copy the vanilla scripts and mix in your edits to have full control
You will need to learn bit of Ren'Py & bit of actual Python anyways but you don't have to think too hard in learning anything new other than familiarizing with this game's script.rpy's already defined Character objects and images, you can freely ignore most of the UI and so on for the inexperienced but passionate artist and/or writer.
Textbox limitation: ~300 characters / four lines, the maximum in the vanilla game's script is around roughly ~278 and that only barely overflows to four lines, so <200 characters / three lines of text should be fine.
--- Ideal file structure of your mod ---
In the root of the mods folder:
folder_of_your_mod_name
- name_of_storyline.rpy
-> asset_folder
- asset.png
-> script_folder
- script.rpy
name_of_storyline.rpy
```
init python:
# Modding Support variables
# All mod rpy files must have title of their mod (this shows up on a button)
# and finally the label that controls the flow of dialogue
mod_menu_access += [{
'Name': "Mod Name",
'Label': "mod_storyline"
}];
image template_sample = Image("mods/folder_of_your_mod_name/asset_folder/asset.png")
label mod_storyline:
call chapter_1_new
```
script_folder/script.rpy
```
label chapter_1_new:
show template_sample at scenter
"Sample Text"
hide template_sample
play music 'audio/OST/Those Other Two Weirdos.ogg'
show anon neutral flip at aright with dissolve
A "Sample Text"
return
```
The funny thing is I don't even like 'fanfictions' to begin with but this mod support allows these 'fanfictions', ironic.

View File

@ -0,0 +1,36 @@
label chapter_2_new:
show template_sample at scenter
"Sample Text"
hide template_sample
play music 'audio/OST/Those Other Two Weirdos.ogg'
show anon neutral flip at aright with dissolve
A "Sample Text"
F "Sample Text"
Lucy "Sample Text"
Ro "Sample Text"
St "Sample Text"
N "Sample Text"
Nas "Sample Text"
T "Sample Text"
Attendant "Sample Text"
Sp "Sample Text"
Re "Sample Text"
D "Sample Text"
FM "Sample Text"
FD "Sample Text"
Tsuki "Sample Text"
unknown "Sample Text"
jingo "Sample Text"
MaitD "Sample Text"
Moe "Sample Text"
Vince "Sample Text"
Waitress "Sample Text"
AnonAndFang "Sample Text"
SV "Sample Text"
carl "Sample Text"
Drf "Sample Text"
FRT "Sample Text"
return

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 B

View File

@ -0,0 +1,15 @@
init python:
# Modding Support variables
# All mod rpy files must have title of their mod (this shows up on a button)
# and finally the label that controls the flow of dialogue
mod_menu_access += [{
'Name': "Example Mod Name",
'Label': "storyline_ex"
}];
image template_sample = Image("mods_example/template/img/sample.png")
label storyline_ex:
call chapter_2_new

View File

@ -23,7 +23,7 @@ define gui.show_name = True
## The version of the game.
define config.version = "Patchy-patch5.1.1"
define config.version = "Monster-Update-6"
## Text that is placed on the game's about screen. Place the text between the
## triple-quotes, and leave a blank line between paragraphs.
@ -47,7 +47,13 @@ define build.name = "SnootGame"
define config.has_sound = True
define config.has_music = True
define config.has_voice = False
define config.has_voice = True
define config.play_channel = "uisounds"
##Custom Channels?
init -1 python:
renpy.music.register_channel("uisounds", "ui", loop=False, stop_on_mute=True)
## To allow the user to play a test sound on the sound or voice channel,
@ -185,6 +191,11 @@ init python:
build.classify('**/#**', None)
build.classify('**/thumbs.db', None)
# Do not include mod_examples as part of the build process
build.classify('game/mods_example/**', None)
build.classify('game/mods_example/.**', None)
## To archive files, classify them as 'archive'.
# build.classify('game/**.png', 'archive')

View File

@ -1,23 +1,44 @@
###Updater Python stuff###
###Updater Python stuff###
init python:
if persistent.updateresult is None:
persistent.updateresult = "No new version is available"
if persistent.autoup is None:
persistent.autoup = False
if persistent.updateWebServer is None:
persistent.updateWebServer = "http://updates.snootgame.xyz/updates.json"
if renpy.variant("pc"): #Don't run this on mobile, not supported
if persistent.updateresult is None:
persistent.updateresult = "No new version is available"
if persistent.autoup is None:
persistent.autoup = False
if persistent.updateWebServer is None:
persistent.updateWebServer = "http://updates.snootgame.xyz/updates.json"
def UpdateCheck():
# WHY YES I ONLY ALLOW PEOPLE USING MY FRAMEWORK TO CHECK FOR AN UPDATE EVERY SIX FUCKING HOURS HOW DID YOU KNOW
# NOPE check_interval=5 (5 SECONDS) FUCK YOU
pendingVersion = updater.UpdateVersion(persistent.updateWebServer, check_interval=5)
if pendingVersion == None or pendingVersion == config.version or "TEST" in pendingVersion:
persistent.updateresult = "No new version is available"
else:
persistent.updateresult = pendingVersion
def UpdateCheck():
# WHY YES I ONLY ALLOW PEOPLE USING MY FRAMEWORK TO CHECK FOR AN UPDATE EVERY SIX FUCKING HOURS HOW DID YOU KNOW
# NOPE check_interval=5 (5 SECONDS) FUCK YOU
pendingVersion = updater.UpdateVersion(persistent.updateWebServer, check_interval=5)
if pendingVersion == None or pendingVersion == config.version or "TEST" in pendingVersion:
persistent.updateresult = "No new version is available"
else:
persistent.updateresult = pendingVersion
#idk non-functional dummies for uisounds hackery
#coming soon
def onclick_audio(flag, audio_filename=["audio/ui/uiOptionOff.wav", "audio/ui/uiOptionOff.wav", "audio/ui/uiOptionOff.wav"]):
renpy.play(audio_filename[int(flag)])
def ToggleAutoUpdate():
onclick_audio(persistent.autoup)
preferences.autoup = not preferences.autoup
def ToggleAutoForwardMove():
onclick_audio(persistent.afm_enable)
preferences.afm_enable = not preferences.afm_enable
# def ToggleMuteAll():
# if preferences.all_mute == True:
# renpy.play("audio/ui/uiOptionOff.wav")
# else:
# renpy.play("audio/ui/uiOptionOn.wav")
# preferences.all_mute = not preferences.all_mute
def ToggleAutoUpdate():
persistent.autoup = not persistent.autoup
################################################################################
## Initialization
@ -47,6 +68,7 @@ style gui_text:
style button:
properties gui.button_properties("button")
# activate_sound "audio/ui/uiClick.wav"
style button_text is gui_text:
properties gui.text_properties("button")
@ -122,7 +144,7 @@ screen say(who, what):
id "window"
if who is not None:
background Image("gui/textbox.png", xalign=0.5, yalign=1.0)
background Image("gui/textbox_long.png", xalign=0.5, yalign=1.0)
window:
id "namebox"
style "namebox"
@ -132,7 +154,6 @@ screen say(who, what):
text what id "what"
## If there's a side image, display it above the text. Do not display on the
## phone variant - there's no room.
if not renpy.variant("small"):
@ -166,9 +187,6 @@ style namebox:
xpos gui.name_xpos
ypos gui.name_ypos
style namebox_large is namebox:
xpos gui.name_large_xpos
style say_label:
properties gui.text_properties("name", accent=True)
xalign gui.name_xalign
@ -253,6 +271,7 @@ style choice_vbox:
style choice_button is default:
properties gui.button_properties("choice_button")
activate_sound "audio/ui/uiRollover.wav"
style choice_button_text is default:
properties gui.button_text_properties("choice_button")
@ -268,6 +287,10 @@ screen quick_button(filename, label, function):
xmaximum 80
ymaximum 72
action function
if 'Return' in label or 'Back' in label or 'Menu' in label:
activate_sound "audio/ui/uiBack.wav"
else:
activate_sound "audio/ui/uiClick.wav"
fixed:
add filename xalign 0.5 yalign 0.5 zoom 1
text label xalign 0.5 yalign 0.5 xanchor 0.5 size 22 style "quick_button_text"
@ -283,22 +306,21 @@ screen quick_menu():
## Ensure this appears on top of other screens.
zorder 100
if quick_menu:
window:
background "gui/namebox.png"
xpos 1.45
ypos 0.977
grid 1 4:
style_prefix "quick"
xalign -0.005
yalign 0.010
window:
xpos 1.45
ypos 0.977
vbox:
style_prefix "quick"
xalign -0.005
yalign 0.010
use quick_buttons("gui/button/uioptionbuttons/template_idle.png", \
[ \
[ "Skip", Skip() ], \
[ "Save", ShowMenu('save') ], \
[ "Auto", Preference("auto-forward", "toggle") ], \
[ "Load", ShowMenu('load') ] \
] )
use quick_buttons("gui/button/uioptionbuttons/template_idle.png",
[
[ "Skip", Skip() ],
[ "Save", ShowMenu('save') ],
[ "Auto", Preference("auto-forward", "toggle") ],
[ "Load", ShowMenu('load') ]
] )
screen score_menu():
zorder 100
@ -354,22 +376,22 @@ screen navigation():
spacing gui.navigation_spacing
textbutton _("History") action ShowMenu("history")
textbutton _("Save") action ShowMenu("save")
textbutton _("Load") action ShowMenu("load")
textbutton _("Delete") action ShowMenu("delete")
textbutton _("Options") action ShowMenu("preferences")
textbutton _("History") activate_sound "audio/ui/uiClick.wav" action ShowMenu("history")
textbutton _("Save") activate_sound "audio/ui/uiClick.wav" action ShowMenu("save")
textbutton _("Load") activate_sound "audio/ui/uiClick.wav" action ShowMenu("load")
textbutton _("Delete") activate_sound "audio/ui/uiClick.wav" action ShowMenu("delete")
textbutton _("Options") activate_sound "audio/ui/uiClick.wav" action ShowMenu("preferences")
#textbutton _("Extras") action ShowMenu("extras")
textbutton _("Return") action Return()
textbutton _("Return") activate_sound "audio/ui/uiBack.wav" action Return()
if _in_replay:
textbutton _("End Replay") action EndReplay(confirm=True)
textbutton _("End Replay") activate_sound "audio/ui/uiBack.wav" action EndReplay(confirm=True)
elif not main_menu:
textbutton _("Main Menu") action MainMenu()
textbutton _("Main Menu") activate_sound "audio/ui/uiBack.wav" action MainMenu()
#textbutton _("Debug Score Card") action ShowMenu("score_menu")
#if renpy.variant("pc"):
@ -402,8 +424,12 @@ screen main_menu_button(filename, label, function):
xmaximum 500
ymaximum 129
action function
if 'Back' in label or 'Return' in label or 'Quit' in label or 'Main Menu' in label:
activate_sound "audio/ui/uiBack.wav"
else:
activate_sound "audio/ui/uiClick.wav"
fixed:
add filename xalign 0.5 yalign 0.5 zoom 1
add filename xalign 0.5 yalign 0.5 zoom 1 xanchor 0 xcenter 0.5 ycenter 0.5
text label xalign 0.5 yalign 0.5 xanchor 0.5
# label_functions is [ [ "label", function() ], [ "foobar", foobar() ], .. ]
@ -436,16 +462,17 @@ screen main_menu():
else:
add "gui/snootgame.png"
vbox:
spacing 25
spacing 10
xpos 1885
yalign 0.9
ypos 1130
use main_menu_buttons("gui/button/menubuttons/template_idle.png",
[ \
[ "Start", Start() ], \
[ "Load", ShowMenu("load") ], \
[ "Options", ShowMenu("preferences") ], \
[
[ "Start", Start() ],
[ "Mods", ShowMenu("mod_menu") ],
[ "Load", ShowMenu("load") ],
[ "Options", ShowMenu("preferences") ],
[ "Extras", ShowMenu("extras") ], \
[ "Quit", Quit(confirm=not main_menu) ] \
[ "Quit", Quit(confirm=not main_menu) ]
] )
on "show" action renpy.start_predict_screen("cg_gallery")
@ -680,10 +707,12 @@ screen updates():
label _("Update Checker:")
label _("{color=#FFFFFF}{size=32}[persistent.updateresult!t]{/size}{/color}")
textbutton _("{size=36}Check for Update\n{/size}") action [Notify("Checking for update..."), Function(UpdateCheck)]
textbutton _("{size=36}Check for Update\n{/size}") activate_sound "audio/ui/uiClick.wav" action [Notify("Checking for update..."), Function(UpdateCheck)]
label _("Updater:")
label _("{color=#FFFFFF}{size=32}Server URL (click to edit):{/size}{/color}")
default input_on = False
button:
key_events True
@ -698,10 +727,9 @@ screen updates():
action ToggleScreenVariable('input_on')
style_prefix "quick"
if persistent.updateresult != "No new version is available":
textbutton _("{size=36}Update Now!\n{/size}") action updater.Update(persistent.updateWebServer, force=False)
textbutton _("{size=36}Update Now!\n{/size}") activate_sound "audio/ui/uiNotification.wav" action [updater.Update(persistent.updateWebServer, force=False)]
else:
textbutton _("{size=36}Update Now!\n{/size}") action Notify("Nothing to update to!")
textbutton _("{size=36}Update Now!\n{/size}") activate_sound "audio/ui/uiFail.wav" action [Notify("Nothing to update to!")]
use extrasnavigation
## Load and Save screens #######################################################
@ -796,19 +824,19 @@ screen file_slots(title, flag=False):
spacing gui.page_spacing
textbutton _("<") action FilePagePrevious()
textbutton _("<") activate_sound "audio/ui/uiRollover.wav" action FilePagePrevious()
if config.has_autosave:
textbutton _("{#auto_page}A") action FilePage("auto")
textbutton _("{#auto_page}A") activate_sound "audio/ui/uiClick.wav" action FilePage("auto")
if config.has_quicksave:
textbutton _("{#quick_page}Q") action FilePage("quick")
textbutton _("{#quick_page}Q") activate_sound "audio/ui/uiClick.wav" action FilePage("quick")
## range(1, 10) gives the numbers from 1 to 9.
for page in range(1, 10):
textbutton "[page]" action FilePage(page)
textbutton "[page]" activate_sound "audio/ui/uiClick.wav" action FilePage(page)
textbutton _(">") action FilePageNext()
textbutton _(">") activate_sound "audio/ui/uiRollover.wav" action FilePageNext()
style page_label is gui_label
@ -866,32 +894,31 @@ screen preferences():
vbox:
style_prefix "radio"
label _("Display")
textbutton _("Window") action Preference("display", "any window")
textbutton _("Fullscreen") action Preference("display", "fullscreen")
textbutton _("Window") activate_sound "audio/ui/uiOptionOn.wav" action Preference("display", "any window")
textbutton _("Fullscreen") activate_sound "audio/ui/uiOptionOn.wav" action Preference("display", "fullscreen")
vbox:
style_prefix "radio"
label _("Rollback Side")
textbutton _("Disable") action Preference("rollback side", "disable")
textbutton _("Left") action Preference("rollback side", "left")
textbutton _("Right") action Preference("rollback side", "right")
textbutton _("Disable") activate_sound "audio/ui/uiOptionOn.wav" action Preference("rollback side", "disable")
textbutton _("Left") activate_sound "audio/ui/uiOptionOn.wav" action Preference("rollback side", "left")
textbutton _("Right") activate_sound "audio/ui/uiOptionOn.wav" action Preference("rollback side", "right")
vbox:
style_prefix "check"
label _("Naughty Stuff")
textbutton _("Enable Lewd Images") action ToggleVariable("persistent.lewd", True, False)
textbutton _("Enable Lewd Images") action [Function(onclick_audio, persistent.lewd), ToggleVariable("persistent.lewd", True, False)]
vbox:
style_prefix "check"
label _("Requires Restart")
textbutton _("Enable Forward-Scroll Movement") action ToggleVariable("persistent.scroll", True, False)
textbutton _("Enable Forward-Scroll Movement") action [Function(onclick_audio, persistent.scroll), ToggleVariable("persistent.scroll", True, False)]
vbox:
style_prefix "check"
label _("Skip")
textbutton _("Unseen Text") action Preference("skip", "toggle")
textbutton _("After Choices") action Preference("after choices", "toggle")
textbutton _("Transitions") action InvertSelected(Preference("transitions", "toggle"))
textbutton _("Unseen Text") action [Function(onclick_audio, preferences.skip_unseen), ToggleVariable("preferences.skip_unseen", True, False)]
textbutton _("After Choices") action [Function(onclick_audio, preferences.skip_after_choices), ToggleVariable("preferences.skip_after_choices", True, False)]
textbutton _("Transitions") action [Function(onclick_audio, preferences.transitions), ToggleVariable("preferences.transitions", 0, 2)]
## Additional vboxes of type "radio_pref" or "check_pref" can be
## added here, to add additional creator-defined preferences.
@ -920,6 +947,12 @@ screen preferences():
hbox:
bar value Preference("music volume")
if config.has_music:
label _("UI Sounds Volume")
hbox:
bar value Preference("ui volume")
if config.has_sound:
label _("Sound Volume")
@ -940,7 +973,7 @@ screen preferences():
if config.sample_voice:
textbutton _("Test") action Play("voice", config.sample_voice)
if config.has_music or config.has_sound or config.has_voice:
if config.has_music or config.has_sound or config.has_voice or config.has_ui:
null height gui.pref_spacing
textbutton _("Mute All"):
@ -1144,10 +1177,10 @@ screen extrasnavigation():
use main_menu_buttons("gui/button/menubuttons/template_idle.png",
[
[ "Help", ShowMenu("help") ],
[ "About", ShowMenu("about") ],
[ "Updates", ShowMenu("updates") ],
[ "About", ShowMenu("about") ],
[ "Updates", ShowMenu("updates") ],
[ "Gallery", ShowMenu("cg_gallery_0") ],
[ "Return", ShowMenu("main_menu") ]
[ "Return", ShowMenu("main_menu") ]
] )
## Help screen #################################################################
@ -1218,7 +1251,7 @@ screen keyboard_help():
hbox:
label _("Escape")
text _("Accesses the game menu.")
text _("Accesses the game menu. Also escapes the Gallery.")
hbox:
label _("Ctrl")
@ -1261,7 +1294,7 @@ screen mouse_help():
hbox:
label _("Right Click")
text _("Accesses the game menu.")
text _("Accesses the game menu. Also escapes the Gallery.")
hbox:
label _("Mouse Wheel Up\nClick Rollback Side")
@ -1362,8 +1395,8 @@ screen confirm(message, yes_action, no_action):
xalign 0.5
spacing 150
textbutton _("Yes") action yes_action
textbutton _("No") action no_action
textbutton _("Yes") activate_sound "audio/ui/uiClick.wav" action yes_action
textbutton _("No") activate_sound "audio/ui/uiBack.wav" action no_action
## Right-click and escape answer "no".
key "game_menu" action no_action
@ -1621,8 +1654,8 @@ style pref_vbox:
screen quick_button(filename, label, function):
variant "small"
button:
xmaximum 180
ymaximum 100
xmaximum 124
ymaximum 124
action function
fixed:
add filename xalign 0.5 yalign 0.5 zoom 1.75
@ -1633,6 +1666,7 @@ screen quick_menu():
zorder 100
if quick_menu:
hbox:
spacing 28
style_prefix "quick"
xalign 0.5
yalign 0.975
@ -1644,6 +1678,28 @@ screen quick_menu():
[ "Menu", ShowMenu() ] \
] )
screen extrasnavigation(): #Updates are removed (not even supported by Ren'Py)
variant "small"
vbox:
xpos 1940
yalign 0.03
if persistent.splashtype == 1:
add "gui/sneedgame.png"
else:
add "gui/snootgame.png"
vbox:
spacing 25
xpos 1885
yalign 0.9
use main_menu_buttons("gui/button/menubuttons/template_idle.png",
[
[ "Help", ShowMenu("help") ],
[ "About", ShowMenu("about") ],
[ "Gallery", ShowMenu("cg_gallery_0") ],
[ "Return", ShowMenu("main_menu") ]
] )
style radio_button:
variant "small"
foreground "gui/phone/button/radio_[prefix_]foreground.png"

View File

@ -13,17 +13,30 @@
#Why yes all my code was formerly in one massive file called "script" thats 28k lines long, how could you tell?
#Licensed under the GNU AGPL v3, for more information check snootgame.xyz or the LICENSE file that should have came with this work.
init -1 python:
# Modding Support variables
# All mod rpy files must run a small init python script
mod_dir = "mods/";
mod_menu_access = [];
init python:
import random
import webbrowser
#function for insult layers
def showCG():
files = ["text0", "text1", "text2", "text3", "text4", "text5", "text6", "text7", "text8", "text9"]
import random
import webbrowser
#function for insult layers
def showCG():
files = ["text1", "text2", "text3", "text4", "text5", "text6", "text7", "text8", "text9"]
length = len(files)
picked = random.randint(0,length - 1)
fileName = files[picked]
renpy.show(fileName, at_list=[randPosition])
if persistent.scroll == True:
# extra music channel so we can do crossfade instead of fadeout followed by fadein
# TODO: function for stopping both channels with optional fadeout so we don't have to keep track of which channel is playing
renpy.music.register_channel("music1","music",True,tight=True)
# allows playing looped ambience alongside music
renpy.music.register_channel("ambient","sfx",True,tight=True)
renpy.music.register_channel("ambient1","sfx",True,tight=True)
renpy.music.register_channel("ambient2","sfx",True,tight=True)
if persistent.scroll == True:
config.keymap['dismiss'].append('mousedown_4')
transform randPosition:
@ -80,38 +93,57 @@ transform randPosition:
# attribute guitar:
# "guitar.webp"
# Click-to-continue icons / animations
# TODO: settle on a position/animation that people like
image ctc_end_marker:
"pickicon_smaller"
# xalign 0.925 yalign 0.98
alpha 0
linear 0.25 alpha 1
# linear 0.5 alpha 0
# repeat
image ctc_mid_marker:
"pickicon2"
# xalign 0.925 yalign 0.98
alpha 0
linear 0.25 alpha 1
# linear 0.5 alpha 0
# repeat
#Raw Image & kwargs for long textboxes
define long_textbox_img = Image("gui/textbox_long.png", xalign=0.5, yalign=1.0)
define long_textbox = { "window_background": long_textbox_img, 'namebox_style': "namebox_large" }
#Characters
define A = Character ('Anon',color="#36E12D", who_outlines=[(1, '#0C300A')]) # Light Green
define F = Character ('Fang',color="#B4D4CE", who_outlines=[(1, '#112D27')]) # Light Cyan
define Lucy = Character ('Lucy',color="#B4D4CE", who_outlines=[(1, '#112D27')]) # Light Cyan
define Ro = Character ('Rosa',color="#FE712B", who_outlines=[(1, '#3D1809')]) # Red-Orange
define St = Character ('Stella',color="#D2FFAA", who_outlines=[(1, '#203011')]) # Light Green
define N = Character ('Naomi',color="#F8B9A0", who_outlines=[(1, '#291A1B')]) # Peach
define Nas = Character ('Naser',color="#F89E38", who_outlines=[(1, '#2D2D2D')]) # Orange
define T = Character ('Trish',color="#B675E6", who_outlines=[(1, '#1F0632')]) # Purple
define Attendant = Character ('Attendant',color="#8A0036", who_outlines=[(1, '#FFFFFF')]) # Maroon
define Sp = Character ('Spears',color="#C4C3C3", who_outlines=[(1, '#272727')]) # Light Grey
define Re = Character ('Reed',color="#ED4C5B", who_outlines=[(1, '#361013')]) # Bright Red
define D = Character ('Driver',color="#FFC63A", who_outlines=[(1, '#4D280A')]) # Yellow-Orange
define FM = Character ('Fangs Mom',color="#FFD8F6", who_outlines=[(1, '#361730')]) # Bright Pink
define FD = Character ('Fangs Dad',color="#D8A09A", who_outlines=[(1, '#190E0F')]) # Desaturated Orange
define Tsuki = Character ('Mr. Tsuki',color="#A7F2A2", who_outlines=[(1, '#320E3B')]) # Pear Green
define unknown = Character ('(???)',color="#000000", who_outlines=[(1, '#FFFFFF')]) # Black
define jingo = Character ('Mr. Jingo',color="#CD8283", who_outlines=[(1, '#0F0D49')]) # Desaturated Red
define MaitD = Character ('Maitre D',color="#241630", who_outlines=[(1, '#241630')]) # Cobalt Blue
define Moe = Character('Moe',color="#A5BEED", who_outlines=[(1, '#342210')]) # Desaturated Blue
define Vince = Character ('Vince',color="#FFC63A", who_outlines=[(1, '#4D280A')]) # Yellow-Orange
define Waitress = Character ('Waitress',color="#F691C8", who_outlines=[(1, '#402E3A')]) # Pink
define base = Character (ctc="ctc_end_marker", ctc_pause="ctc_mid_marker", ctc_timedpause=Null(), ctc_position="nestled") # try to remember some of the basics of CTC
define narrator = Character(kind=base)
define A = Character ('Anon', base, color="#36E12D", who_outlines=[(gui.name_text_thickness, '#0C300A')]) # Light Green
define F = Character ('Fang', base, color="#B4D4CE", who_outlines=[(gui.name_text_thickness, '#0F3930')]) # Light Cyan
define Lucy = Character ('Lucy', base, color="#B4D4CE", who_outlines=[(gui.name_text_thickness, '#0F3930')]) # Light Cyan
define Ro = Character ('Rosa', base, color="#FE712B", who_outlines=[(gui.name_text_thickness, '#54230F')]) # Red-Orange
define St = Character ('Stella', base, color="#D5FFAE", who_outlines=[(gui.name_text_thickness, '#294211')]) # Light Green
define N = Character ('Naomi', base, color="#FDD2C1", who_outlines=[(gui.name_text_thickness, '#462628')]) # Peach
define Nas = Character ('Naser', base, color="#FFB561", who_outlines=[(gui.name_text_thickness, '#512322')]) # Orange
define T = Character ('Trish', base, color="#B675E6", who_outlines=[(gui.name_text_thickness, '#3A0C5D')]) # Purple
define Attendant = Character ('Attendant', base, color="#5BF0F8", who_outlines=[(gui.name_text_thickness, '#121C68')]) # Aqua
define Sp = Character ('Spears', base, color="#C7C7C7", who_outlines=[(gui.name_text_thickness, '#272727')]) # Light Grey
define Re = Character ('Reed', base, color="#ED4C5B", who_outlines=[(gui.name_text_thickness, '#421014')]) # Bright Red
define D = Character ('Driver', base, color="#FFECBC", who_outlines=[(gui.name_text_thickness, '#563010')]) # Yellow-Orange
define FM = Character ("Fang's Mom", base, color="#FFD8F6", who_outlines=[(gui.name_text_thickness, '#521947')]) # Bright Pink
define FD = Character ("Fang's Dad", base, color="#D8A09A", who_outlines=[(gui.name_text_thickness, '#461B1F')]) # Desaturated Orange
define Tsuki = Character ('Mr. Tsuki', base, color="#A7F2A2", who_outlines=[(gui.name_text_thickness, '#471054')]) # Pear Green
define unknown = Character ('(???)', base, color="#FFF", who_outlines=[(gui.name_text_thickness, '#000')]) # White
define jingo = Character ('Mr. Jingo', base, color="#CD8283", who_outlines=[(gui.name_text_thickness, '#0F0D49')]) # Desaturated Red
define MaitD = Character ('Maitre D', base, color="#AF9EFF", who_outlines=[(gui.name_text_thickness, '#241630')]) # Cobalt Blue
define Moe = Character('Moe', base, color="#A5BEED", who_outlines=[(gui.name_text_thickness, '#1F253B')]) # Desaturated Blue
define Vince = Character ('Vince', base, color="#FFECBC", who_outlines=[(gui.name_text_thickness, '#563010')]) # Yellow-Orange
define Waitress = Character ('Waitress', base, color="#F691C8", who_outlines=[(gui.name_text_thickness, '#512040')]) # Pink
#long TB chars
define AnonAndFang = Character('Anon and Fang',color="72DFA8", who_outlines=[(1, '#113623')], **long_textbox) # Cyan
define SV = Character ('Street Vendor',color="#F8E120", who_outlines=[(1, '#361504')], **long_textbox) # Yellow
define carl = Character ('Mr. Carldewskii',color="#E19E40", who_outlines=[(1, '#03223B')], **long_textbox) # Puke Orange
define Drf = Character ('Dr. Fernsworth',color="#253354", who_outlines=[(1, '#334573')], **long_textbox) # Royal Blue
define FRT = Character ('Fang Reed & Trish',color="#4963A5", who_outlines=[(1, '#FFFFFF')], **long_textbox) # Cold Blue
define AnonAndFang = Character('Anon and Fang', base, color="72DFA8", who_outlines=[(gui.name_text_thickness, '#113623')]) # Cyan
define SV = Character ('Street Vendor', base, color="#F8E120", who_outlines=[(gui.name_text_thickness, '#58260C')]) # Yellow
define carl = Character ('Mr. Carldewskii', base, color="#EECB99", who_outlines=[(gui.name_text_thickness, '#082337')]) #Puke Orange
define Drf = Character ('Dr. Fernsworth', base, color="#DCEEF5", who_outlines=[(gui.name_text_thickness, '#253354')]) #Yellow-Orange
define FRT = Character ('Fang Reed & Trish', base, color="#DCBBF7", who_outlines=[(gui.name_text_thickness, '#191C78')]) #Light Purple
#Extra image translations
#siloettes
@ -119,6 +151,7 @@ image stellaSilo = im.Flip(im.MatrixColor("stella/stella neutral.png",im.matrix.
image rosaSilo = im.MatrixColor("rosa/rosa neutral.png",im.matrix.brightness(-1))
image naomiSilo = im.MatrixColor("naomi/naomi neutral.png",im.matrix.brightness(-1))
image naserSilo = im.Flip(im.MatrixColor("naser/naser neutral.png",im.matrix.brightness(-1)), horizontal=True)
image naserSiloShocked = im.Flip(im.MatrixColor("naser/naser shocked.png",im.matrix.brightness(-1)), horizontal=True)
image fangSilo = im.MatrixColor("fang/basic set/fang neutral.png",im.matrix.brightness(-1))
image fangAngrySilo = im.MatrixColor("fang/basic set/fang angry.png",im.matrix.brightness(-1))
@ -194,6 +227,7 @@ image reed sad flip = im.Flip("reed/reed sad.png", horizontal=True)
#shocked flips
image anon shocked flip = im.Flip("anon/emotive set/anon shocked.png", horizontal=True)
image anon ohshit flip = im.Flip("anon/base set/anon ohshit.png", horizontal=True)
image fang shocked flip = im.Flip("fang/emotive set/fang shocked.png", horizontal=True)
image fang c shocked flip = im.Flip("fang/future sets/fang c shocked.png", horizontal=True)
image reed shocked flip = im.Flip("reed/reed shocked.png", horizontal=True)
@ -207,6 +241,8 @@ image reed considering flip = im.Flip("reed/reed considering.png", horizontal=Tr
image naser considering flip = im.Flip("naser/naser considering.png", horizontal=True)
image naomi considering flip = im.Flip("naomi/naomi considering.png", horizontal=True)
image rosa considering flip = im.Flip("rosa/rosa considering.png", horizontal=True)
image trish considering flip = im.Flip("trish/trish considering.png", horizontal=True)
image stella considering flip = im.Flip("stella/stella considering.png", horizontal=True)
#happy flips
image fang happy flip = im.Flip("fang/basic set/fang happy.png", horizontal=True)
@ -223,6 +259,8 @@ image naomi prom happy flip = im.Flip("naomi/naomi prom happy.png", horizontal=T
image reed happy flip = im.Flip("reed/reed happy.png", horizontal=True)
image reed happy sunglasses flip = im.Flip("reed/reed happy sunglasses.png", horizontal=True)
image anon face happy flip = im.Flip("anon/base set/anon face happy.png", horizontal=True)
image anon happy flip = im.Flip("anon/emotive set/anon happy.png", horizontal=True)
image anon grin flip = im.Flip("anon/base set/anon grin.png", horizontal=True)
image trish future smug flip = im.Flip("trish/trish future smug.png", horizontal=True)
image trish prom happy flip = im.Flip("trish/trish prom happy.png", horizontal=True)
image stella happy flip = im.Flip("stella/stella happy.png", horizontal=True)
@ -254,7 +292,7 @@ image stella unimpressed flip = im.Flip("stella/stella unimpressed.png", horizon
image trish future unimpressed flip = im.Flip("trish/trish future unimpressed.png", horizontal=True)
image fangdad unimpressed flip = im.Flip("fangparents/fangdad unimpressed.png", horizontal=True)
image fangmom unimpressed flip = im.Flip("fangparents/fangmom unimpressed.png", horizontal=True)
image rosa unimpressed flip = im.Flip("rosa/rosa unimpressed.png", horizontal=True)
#annoyed flip
image naser annoyed flip = im.Flip("naser/naser annoyed.png", horizontal=True)
@ -268,9 +306,11 @@ image fang hiding flip = im.Flip("fang/emotive set/fang hiding.png", horizontal=
#indignant flip
image trish prom indignant flip = im.Flip("trish/trish prom indignant.png", horizontal=True)
image trish indignant flip = im.Flip("trish/trish indignant.png", horizontal=True)
#surprised flip
image fang surprised flip = im.Flip("fang/basic set/fang surprised.png", horizontal=True)
image trish surprised flip = im.Flip("trish/trish surprised.png", horizontal=True)
#other flips
@ -287,9 +327,13 @@ image jinflip = im.Flip("other/jin.png", horizontal=True)
image farnsworth flip = im.Flip("other/farnsworth.png", horizontal=True)
image carldelewski flip = im.Flip("other/carldelewski.png", horizontal=True)
image fangdad unimpressed flip = im.Flip("fangparents/fangdad unimpressed.png", horizontal=True)
image naser handout flip = im.Flip("naser/naser handout.png", horizontal=True)
# vfx
image black = "#000"
image dimmer_lighter = "#00000033"
image dimmer_light = "#00000066"
image dimmer_darker = "#00000088"
#WAOH ITS THE TITLE SCREEN!!!!
label splashscreen:
@ -301,7 +345,7 @@ label splashscreen:
UpdateCheck()
if persistent.updateresult != "No new version is available":
updater.update(persistent.updateWebServer, force=True)
stop sound
return

File diff suppressed because it is too large Load Diff

View File

@ -151,7 +151,7 @@ label chapter_13A:
FD "Dont sweat it, son."
FD "Thing about humans, as well as many charnivores, is that their vision is based largely on movement."
FD "Thing about humans, as well as many carnivores, is that their vision is based largely on movement."
FD "Youd be surprised how useful staying quiet and stationary can be."

View File

@ -146,7 +146,7 @@ label chapter_13C:
FD "Dont sweat it, son."
FD "Thing about humans, as well as many charnivores, is that their vision is based largely on movement."
FD "Thing about humans, as well as many carnivores, is that their vision is based largely on movement."
FD "Youd be surprised how useful staying quiet and stationary can be."
@ -433,6 +433,7 @@ label chapter_13C:
F "Mumbling."
"Fuck."
Nas "I think Ill hit up the catering first."
Nas "What about you guys?"
@ -529,6 +530,7 @@ label chapter_13C:
stop music fadeout 1.0
play music "audio/OST/west_coast_kicking.ogg" fadein 1.0
"Lucy's looking on edge, I should probably intervene quick."
N "-dress is very nice, Lucy, we should go out together clothes shopping sometime!"
F "I-I uh…"
@ -1249,7 +1251,7 @@ label chapter_13C:
A "And I mean, I REALLY cant dance."
A "Like, quadraplegic with down syndrome cant dance."
A "Like, quadriplegic with down syndrome cant dance."
A "But-"

View File

@ -144,7 +144,7 @@ label chapter_13D:
FD "Dont sweat it, son."
FD "Thing about humans, as well as many charnivores, is that their vision is based largely on movement."
FD "Thing about humans, as well as many carnivores, is that their vision is based largely on movement."
FD "Youd be surprised how useful staying quiet and stationary can be."

View File

@ -520,7 +520,7 @@ label chapter_14D:
show fang d happy with dissolve
"We chuckle together."
play music "audio/OST/Amberlight Brilliance.ogg" fadein 1.0
play music "audio/OST/Amberlight Brilliance D ending.ogg" fadein 1.0
A "Hey, Lucy…"
"I keep my eyes on the stars, even when Lucy turns to look at me."

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,47 +1,89 @@
label chapter_6:
#Not A Date
scene room anon dark with fade
"-One Month Later-"
play music 'audio/OST/Bayside Bumming it.ogg' fadein 1.0
"Im laying in bed on a saturday morning."
"Its been raining the last few days, so Im stuck inside."
"Not like I had any other plans anyways."
"The forecast says it should clear up later today."
"Theres no new games out, and my backlog is just the perfect size of fuck that noise."
"I dont even feel like baiting on a certain basket weaving polynesian forum."
"The light of my phone is the only thing illuminating my hovel of a home."
"I scroll through the camera roll out of boredom."
"At least thats what I tell myself."
"Interspersed through various memes and screenshots of homework assignments are pictures Fang has been sending."
"Over the last month Ive been included more in Fangs circle of friends."
#[CG of Fang having beaten Anon on a Primal Rage arcade cabinet]
"Ugh… My cred… I can feel it slipping away."
#[CG of Reed in his mascot outfit at one of Nasers track meet]
"Hehehehe, Reed stole all the hotdogs that day."
#[CG of a selfie of Trish and Fang on the pier]
"I scroll past that one swiftly… god damn it Trish…"
"My perusal through old pictures is interrupted with a text."
"Fang: Looking for new band venue"
"Fang: Dont feel like going alone"
"Fang: Do you want to come with?"
"...Alone…? No, shut the fuck up alarms."
"Anon: Why alone?"
"Fang: Trish has a horn appt and Reed is"
"A pause."
"Fang: Preoccupied."
#cut to Reed in bathroom cg
Re "...dude like… back to the story..."
#cut back to Anon
"Anon: Alright, where we dropping?"
"Fang: Just show up at my place in like an hour"
"Fang: Need to go now"
"Anon: k"
stop music fadeout 1.0
"This is fine."
play music 'audio/OST/Fuck You I Like To Shitpost.ogg' fadein 1.0
"Its just helping a friend of mine find someplace for her band to play."
"A friend I have feelings for."
"And were alone."
scene room anon day
"JUST HANGING OUT CALM DOWN ANON CALM THE FUCK DOWN."
"I boot up my computer and start a gacha thread on a taiwanese rum brewing blogsite."

View File

@ -344,7 +344,6 @@ label chapter_8:
A "Er… why not."
"I take the guitar from her hands and put the strap on, letting its weight hang from my shoulder."
"Fang hands me the pick and I aimlessly strum the guitar, the mess of a noise sounding a far cry from her elegant playing."
@ -356,7 +355,9 @@ label chapter_8:
show fanganonguitar
with dissolve
"Fang grabs another guitar and motions me to copy her hand movements."
"I try to mimic her hands on the fretboard but it feels like my fingers are twisting into pretzels."
F "Not like that, your hands gonna get cramped as fuck like that."
"Fang sets her guitar down on a stand and comes over to me."

View File

@ -158,17 +158,17 @@ screen cg_gallery(flag, __yoffset = 0, origin = 'CG'):
textbutton _(cp['name']) text_color gui.selected_color text_xalign 0.5
else:
if cp['eval'] is None:
textbutton _(cp['name']) action ShowMenu('cg_gallery_'+flag, 0, cp['name']) text_xalign 0.5
textbutton _(cp['name']) activate_sound "audio/ui/uiClick.wav" action ShowMenu('cg_gallery_'+flag, 0, cp['name']) text_xalign 0.5
elif eval(cp['eval']):
textbutton _(cp['name']) action ShowMenu('cg_gallery_'+flag, 0, cp['name']) text_xalign 0.5
textbutton _(cp['name']) activate_sound "audio/ui/uiClick.wav" action ShowMenu('cg_gallery_'+flag, 0, cp['name']) text_xalign 0.5
else:
textbutton _(cp['name']) text_xalign 0.5
textbutton _("Return") action ShowMenu('main_menu') text_xalign 0.5
textbutton _("Return") activate_sound "audio/ui/uiBack.wav" action ShowMenu('main_menu') text_xalign 0.5
if _in_replay:
textbutton _("End Replay") action EndReplay(confirm=True)
textbutton _("End Replay") activate_sound "audio/ui/uiBack.wav" action EndReplay(confirm=True)
elif not main_menu:
textbutton _("Main Menu") action MainMenu()
textbutton _("Main Menu") activate_sound "audio/ui/uiBack.wav" action MainMenu()
transform:
zoom 0.95
@ -248,6 +248,7 @@ screen view_image(item, _origin, zoom = zoom_arr.index(1.0), flag='a'):
tag menu
key "game_menu" action _origin
key "button_alternate" action _origin
# mousewheel & insert+delete
if (ALLOW_ZOOM):
@ -273,13 +274,20 @@ screen view_image(item, _origin, zoom = zoom_arr.index(1.0), flag='a'):
#Reuse quick buttons, Ren'Py handles touch input lazy, it doesn't have
#double finger pinch zoom, it translates taps as mouse events - have to use
#buttons
if (ALLOW_ZOOM) and renpy.variant("small"):
hbox:
style_prefix "quick"
xalign 0.5
yalign 0.975
hbox:
style_prefix "quick"
xalign 0.5
yalign 0.975
if (ALLOW_ZOOM) and renpy.variant("small"):
use quick_buttons("gui/button/uioptionbuttons/template_idle.png",
[
[ "+", zoom_a_f ],
[ "-", zoom_b_f ]
[ "-", zoom_b_f ],
[ "Return", zoom_b_f ]
] )
elif renpy.variant("small"):
use quick_buttons("gui/button/uioptionbuttons/template_idle.png",
[
[ "Return", _origin ]
] )

73
game/src/mod_menu.rpy Normal file
View File

@ -0,0 +1,73 @@
# Mod Menu screen ############################################################
##
## Handles jumping to the mods scripts
## Could be more lean but if this is going to one of last time I touch the UI,
## then fine by me
##
#similar to quick_button funcs
screen mod_menu_button(filename, label, function):
button:
xmaximum 600
ymaximum 129
action function
if 'Back' in label or 'Return' in label or 'Quit' in label or 'Main Menu' in label:
activate_sound "audio/ui/uiBack.wav"
else:
activate_sound "audio/ui/uiClick.wav"
fixed:
add filename xalign 0.5 yalign 0.5 zoom 0.9
text label xalign 0.5 yalign 0.5 xanchor 0.5 size 34
# arr is [{
# 'Name': string (name that appears on the button)
# 'Label': string (jump label)
# }, { .. } ]
# Reuse the same image string and keep things 'neat'.
screen mod_menu_buttons(filename, arr):
for x in arr:
use mod_menu_button(filename, x['Name'], Start(x['Label']))
screen mod_menu():
tag menu
style_prefix "main_menu"
add gui.main_menu_background
frame:
xsize 420
yfill True
background "gui/overlay/main_menu.png"
#side_yfill True
vbox:
xpos 1940
yalign 0.03
if persistent.splashtype == 1:
add "gui/sneedgame.png"
else:
add "gui/snootgame.png"
viewport:
# this could be better but its ok for now
xpos 1885-540
xmaximum 540
ymaximum 0.8
ypos 200
yinitial 0
scrollbars "vertical"
mousewheel True
draggable True
pagekeys True
vbox:
#xpos 1885
spacing 18
#yalign 0.98
#buttons are messed up but that's ok
use mod_menu_button("gui/button/menubuttons/template_idle.png", "Return", ShowMenu("main_menu"))
if len(mod_menu_access) is not 0:
use mod_menu_buttons("gui/button/menubuttons/template_idle.png", mod_menu_access )
else:
use mod_menu_button("gui/button/menubuttons/template_idle.png", "You have no mods", None)

View File

@ -58,4 +58,4 @@ label ending:
if tradwife:
scene c10 with fade
pause 20
return
return

12
game/utility.rpy Normal file
View File

@ -0,0 +1,12 @@
## Utility functions for game setup, debugging etc.
label initstats(anon=0, fang=0, trad=False):
# Sets various game-related global variables
# :param int anon: Anon's score
# :param int fang: Fang's score
# :param bool trad: Tradwife ending flag
$ anonscore = anon
$ fangscore = fang
$ tradwife = trad
return