4.20 star(s) 56 Votes

Daxter250

Forum Fanatic
Sep 17, 2017
4,684
13,103
OH! I thought the bars were added by Shotcut.

1) Once you have the video in the main screen, picked a segment to edit, and dragged it to the timeline:
2) Click the clip in the timeline
3) On the top bar (Open file, save, undo, etc), click "Filters"
4) Click the + icon, and choose "Crop". If it's not there, enter it in the search bar that auto-pops, or click "All Video Filters" and find it. You probably want to add this to your favourite Filters. The only other one I use regularly is adjust white balance, and sometimes the stretch that you've used.
5) Enter the number of pixels to crop (you'll want to crop about 100 on the Top and Bottom, then adjust from there). You can drag the bar as well, but if you like details you'll just want to enter the numbers. You'll see the results in real-time.

6) Then! Add up the amount you've cropped from the y axis (Top + Bottom) and x axis (Left + Right). Under "Resolution" in the export tab, take away exactly this many pixels. ie: If the bars were 50 px each and the video was 640x480 (which yours are), change the number to 640x380. ALSO Change the aspect ratio to these numbers! Make resolution = aspect ratio.
7) Now hit Export File.

That should work. Hit me up if problems.
You don't have permission to view the spoiler content. Log in or register now.
 

Epadder

Programmer
Game Developer
Oct 25, 2016
568
1,064
I did the steps as sp1ker described (using portable version 64-bit Shotcut) and got

I used webm as export type with default settings otherwise...
I did have a problem where I had black bars but that is when I adjusted the properties of the clip to be 16:9 aspect ratio also, only have to change the resolution and aspect ratio on export.
 

Daxter250

Forum Fanatic
Sep 17, 2017
4,684
13,103
You don't have permission to view the spoiler content. Log in or register now.

edit: nvm dude, i found it out. IT IS THE FUCKING VERSION NUMBER!!!!!!!!!!!!!11111

ffs i downloaded an ultra old version from MARCH and instantly got it to work how spiker told me to. INSTANTLY!
hours of fiddling around just to find out that the newest version isn't stable /§&"%!$$"%. god fucking damn it!
unfortunately the march version doesn't have gif included, so i gotta find a version that is STABLE and has GIF.

gotta calm down somehow, i'm so fucking pissed right now... all thanks to the god damn version. tested it now out with various different clips. it's so hilarious i'm laughing already. it's really exactly how spiker said it before. adjust the crop, adjust resolution and size and voila, done.
a small advise: don't fucking use the august version...save ya precious time...
 

Daxter250

Forum Fanatic
Sep 17, 2017
4,684
13,103
hahaha, yeeeeees! the june version! yeeeeeeeeeeeeeessssssss. after hours of hours of hours i can finally begin my work!
look at the results:

no black bars! my god... june version it is then.finally, i'm settled. now i'm done for today. gotta regain my sanity after this shit.
 

Epadder

Programmer
Game Developer
Oct 25, 2016
568
1,064
Sorry I went to bed, but glad you got it... for reference I used version 18.08.14 from
 

chainedpanda

Active Member
Jun 26, 2017
642
1,158
I'm sure the this bug has been reported at some point. Energy seems to sorta reset it will jump up and basically never run out. I personally haven't noticed a pattern. Although, I haven't witnessed it until after all perks are unlocked, making me think its related to leveling up (pure speculation.)

Edit: You should probably ignore this. I'm now 90% sure I'm just an idiot. I didn't realize some events gives energy and I think that's what was up.
 

sp1ker

Newbie
Apr 29, 2017
96
69
hahaha, yeeeeees! the june version! yeeeeeeeeeeeeeessssssss. after hours of hours of hours i can finally begin my work!
look at the results:

no black bars! my god... june version it is then.finally, i'm settled. now i'm done for today. gotta regain my sanity after this shit.
Wow. That must have been... frustrating - I totally feel your pain.
Sorry, I just figured you were mis-reading the aspect ratio bit - that's what tripped me up when I started fiddling with the program a couple months ago.
Sounds like you're golden for now - let me know if I can help otherwise.
I use it exclusively for clips. Webm clips for other games (SOB, Free Cities), GIFs for this and WhoreMaster. Seems to do all the things. Only thing that's difficult is making a "Boomerang"-like effect. I got it to work but it takes a LOT of steps.
Good luck and godspeed.
 

trythisone

Newbie
Nov 1, 2017
55
8
Those of you looking to edit the images use in the game may find this useful. I made a version of the game where the girl data - body data images and possible names are load from a text file the user selects when beginning a game.
(requiring the user having to select a file stored on the local machine is a security feature of java-script).
There is also a reload data option on the Blessing screen.

With this someone can edit or add images with needing to change any code.

It uses a loading method similar SugarCubes save/load to disk, so hopefully it works with most browsers. It works for me in the current versions of both Chrome and Firefox.

I've included both a default file that replicates the current game images, and a text file that describes the format the file needs to be in.

EDIT: fixed a bug I created
 
  • Like
Reactions: sp1ker

sp1ker

Newbie
Apr 29, 2017
96
69
Those of you looking to edit the images use in the game may find this useful. I made a version of the game where the girl data - body data images and possible names are load from a text file the user selects when beginning a game.
(requiring the user having to select a file stored on the local machine is a security feature of java-script).
There is also a reload data option on the Blessing screen.

With this someone can edit or add images with needing to change any code.

It uses a loading method similar SugarCubes save/load to disk, so hopefully it works with most browsers. It works for me in the current versions of both Chrome and Firefox.

I've included both a default file that replicates the current game images, and a text file that describes the format the file needs to be in.

EDIT: fixed a bug I created
Frankly, this is genius, especially given the way this game is going to get updated in the coming months with both anime and photos being used.

I'm on my phone right now so I can't look at your source code - could this be modified to allow Webm files? I can't wait to use 5-20 second clips in high quality ;)
 

Daxter250

Forum Fanatic
Sep 17, 2017
4,684
13,103
2nd girl done (15th girl) . also modified girl 14 by using some gifs from the former girl 15 (which was the same person).
4 more girls to remake and the first patch is ready to shoot ^^.
 

trythisone

Newbie
Nov 1, 2017
55
8
Frankly, this is genius, especially given the way this game is going to get updated in the coming months with both anime and photos being used.

I'm on my phone right now so I can't look at your source code - could this be modified to allow Webm files? I can't wait to use 5-20 second clips in high quality ;)
I believe webm files are displayed with a <video> tag, not <img> - so no.
However I believe modifications to the game to support that could be made easily enough.
 
  • Like
Reactions: sp1ker

trythisone

Newbie
Nov 1, 2017
55
8
Inspired by what @Enigior did a few pages back, I've been able to make a widet in game that shows either an image or video - only based on file extentsion, but that should be good enough.
Code:
<<widget "imgOrVideo">><<nobr>>
   <<if [".m4v",".avi",".mpg",".mp4",".webm",".ogg"].includes($args[0].substring($args[0].lastIndexOf(".")))>>
      <<print '<video src="' + $args[0] + '"></video>'>>
   <<else>>
      <<print '<img src="' + $args[0] + '"\>'>>
   <</if>>
<</nobr>><</widget>>
the follow will then display correctly whether $fileName is a image or video
Code:
<<imgOrVideo $fileName>>
 
  • Like
Reactions: sp1ker

hiasi21

New Member
Jan 23, 2018
3
0
Hey i startet the game and i can just grind Wood and Food and stone and i can meet the sphinx but i can`t go somewhere else or meet some girls :-Z
 

Dremo

Member
Jul 4, 2017
257
381
Hi, is there any way to "revert" or edit our past choices in the game? For example I messed up with Tiamat (Dragon broodmother) and would like to access her content without having to start over
 

FA80

Active Member
Apr 22, 2017
506
440
Hi, is there any way to "revert" or edit our past choices in the game? For example I messed up with Tiamat (Dragon broodmother) and would like to access her content without having to start over
You could use chrome and open its console (check google how to do that), go to sugarcube and search for the variable "$dragonDead" and set it to 0.
 
  • Like
Reactions: Dremo

Enigior

Newbie
Feb 18, 2018
40
104
Code:
<<widget "imgOrVideo">><<nobr>>
   <<if [".m4v",".avi",".mpg",".mp4",".webm",".ogg"].includes($args[0].substring($args[0].lastIndexOf(".")))>>
      <<print '<video src="' + $args[0] + '"></video>'>>
   <<else>>
      <<print '<img src="' + $args[0] + '"\>'>>
   <</if>>
<</nobr>><</widget>>
the follow will then display correctly whether $fileName is a image or video
Code:
<<imgOrVideo $fileName>>

I expanded my code using your extensions and added fallback support to gif for videos:
Code:
<<widget "image">><<nobr>>
   /* get filename and extension, set ".gif" to extension if omitted*/
   <<set _wImgFileNoExt = $args[0]>>
   <<set _wImgIndexDot = $args[0].lastIndexOf(".")>>
   <<set _wImgExt = "">>
   <<if _wImgIndexDot > 0>>
       <<set _wImgFileNoExt = _wImgFileNoExt.substring(0,_wImgIndexDot)>>
       <<set _wImgExt = $args[0].substring(_wImgIndexDot)>>
   <</if>>
   <<if _wImgExt.length == 0>><<set _wImgExt = ".gif">><</if>>
  
   <<if $args[1].length > 0>>
       /* get prefered extension, insert leading "." if omitted*/
       <<set _wImgPrefExt = $args[1]>>
      <<if $args[1].lastIndexOf(".", 1) < 0>><<set _wImgPrefExt = "." + _wImgPrefExt>><</if>>

    
/*display image or video*/
        <<if [".m4v",".avi",".mpg",".mp4",".webm",".ogg"].includes(_wImgPrefExt)>>
         <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
       <<else>>
         <<= '<img src="' + _wImgFileNoExt + _wImgPrefExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'>'>>
       <</if>>
   <<else>>
      <<if [".m4v",".avi",".mpg",".mp4",".webm",".ogg"].includes(_wImgExt)>>
       <<= '<video src="' + _wImgFileNoExt + _wImgExt + '" onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + ".gif" + '"\'></video>'>>
     <<else>>
       <<= '<img src="' + _wImgFileNoExt + _wImgExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + ".gif" + '"\'>'>>
     <</if>>
   <</if>>
<</nobr>><</widget>>
 

trythisone

Newbie
Nov 1, 2017
55
8
I expanded my code using your extensions and added fallback support to gif for videos:
Code:
<<widget "image">><<nobr>>
   /* get filename and extension, set ".gif" to extension if omitted*/
   <<set _wImgFileNoExt = $args[0]>>
   <<set _wImgIndexDot = $args[0].lastIndexOf(".")>>
   <<set _wImgExt = "">>
   <<if _wImgIndexDot > 0>>
       <<set _wImgFileNoExt = _wImgFileNoExt.substring(0,_wImgIndexDot)>>
       <<set _wImgExt = $args[0].substring(_wImgIndexDot)>>
   <</if>>
   <<if _wImgExt.length == 0>><<set _wImgExt = ".gif">><</if>>
 
   <<if $args[1].length > 0>>
       /* get prefered extension, insert leading "." if omitted*/
       <<set _wImgPrefExt = $args[1]>>
      <<if $args[1].lastIndexOf(".", 1) < 0>><<set _wImgPrefExt = "." + _wImgPrefExt>><</if>>

  
/*display image or video*/
        <<if [".m4v",".avi",".mpg",".mp4",".webm",".ogg"].includes(_wImgPrefExt)>>
         <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
       <<else>>
         <<= '<img src="' + _wImgFileNoExt + _wImgPrefExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'>'>>
       <</if>>
   <<else>>
      <<if [".m4v",".avi",".mpg",".mp4",".webm",".ogg"].includes(_wImgExt)>>
       <<= '<video src="' + _wImgFileNoExt + _wImgExt + '" onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + ".gif" + '"\'></video>'>>
     <<else>>
       <<= '<img src="' + _wImgFileNoExt + _wImgExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + ".gif" + '"\'>'>>
     <</if>>
   <</if>>
<</nobr>><</widget>>
My version was quick and dirty test to see if it could be done. Not sure how complete the list of video extensions is, the <video> tag is suppose to support mp4, webm and ogg. I would declare it at the start of the widget so that if it does need to get altered it only has to be changed in one location.
Something like
Code:
<<set VIDEO_EXTENSIONS = [".m4v",".avi",".mpg",".mp4",".webm",".ogg"]; >>
...
<<if VIDEO_EXTENSIONS.includes(_wImgExt)>>
Also in order to work as expected in the game the <video> tag needs autoplay and loop, my example is missing them too.
 

Enigior

Newbie
Feb 18, 2018
40
104
Fixed an error, added the requested values and set the suggested array :)
Code:
<<widget "image">><<nobr>>
   /*set array for video extensions*/
   <<set _VIDEO_EXTENSIONS = [".m4v",".avi",".mpg",".mp4",".webm",".ogg"]>>

   /* get filename and extension, set ".gif" to extension if omitted*/
   <<set _wImgFileNoExt = $args[0]>>
   <<set _wImgIndexDot = $args[0].lastIndexOf(".")>>
   <<set _wImgExt = "">>
   <<if _wImgIndexDot > 0>>
       <<set _wImgFileNoExt = _wImgFileNoExt.substring(0,_wImgIndexDot)>>
       <<set _wImgExt = $args[0].substring(_wImgIndexDot)>>
   <</if>>
   <<if _wImgExt.length == 0>><<set _wImgExt = ".gif">><</if>>
  
   <<if def $args[1] and $args[1].length >0>>
       /* get prefered extension, insert leading "." if omitted*/
       <<set _wImgPrefExt = $args[1]>>
      <<if $args[1].lastIndexOf(".", 1) < 0>><<set _wImgPrefExt = "." + _wImgPrefExt>><</if>>

    
/*display image or video*/
        <<if _VIDEO_EXTENSIONS.includes(_wImgPrefExt)>>
          <<if _VIDEO_EXTENSIONS.includes(_wImgExt)>>
            <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
          <<else>>
            <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
          <</if>>
       <<else>>
         <<= '<img src="' + _wImgFileNoExt + _wImgPrefExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'>'>>
       <</if>>
   <<else>>
      <<if _VIDEO_EXTENSIONS.includes(_wImgExt)>>
       <<= '<video src="' + _wImgFileNoExt + _wImgExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + ".gif" + '"\'></video>'>>
     <<else>>
       <<= '<img src="' + _wImgFileNoExt + _wImgExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + ".gif" + '"\'>'>>
     <</if>>
   <</if>>
<</nobr>><</widget>>
 

trythisone

Newbie
Nov 1, 2017
55
8
Fixed an error, added the requested values and set the suggested array :)
Code:
<<widget "image">><<nobr>>
   /*set array for video extensions*/
   <<set _VIDEO_EXTENSIONS = [".m4v",".avi",".mpg",".mp4",".webm",".ogg"]>>

   /* get filename and extension, set ".gif" to extension if omitted*/
   <<set _wImgFileNoExt = $args[0]>>
   <<set _wImgIndexDot = $args[0].lastIndexOf(".")>>
   <<set _wImgExt = "">>
   <<if _wImgIndexDot > 0>>
       <<set _wImgFileNoExt = _wImgFileNoExt.substring(0,_wImgIndexDot)>>
       <<set _wImgExt = $args[0].substring(_wImgIndexDot)>>
   <</if>>
   <<if _wImgExt.length == 0>><<set _wImgExt = ".gif">><</if>>
 
   <<if def $args[1] and $args[1].length >0>>
       /* get prefered extension, insert leading "." if omitted*/
       <<set _wImgPrefExt = $args[1]>>
      <<if $args[1].lastIndexOf(".", 1) < 0>><<set _wImgPrefExt = "." + _wImgPrefExt>><</if>>

 
/*display image or video*/
        <<if _VIDEO_EXTENSIONS.includes(_wImgPrefExt)>>
          <<if _VIDEO_EXTENSIONS.includes(_wImgExt)>>
            <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
          <<else>>
            <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
          <</if>>
       <<else>>
         <<= '<img src="' + _wImgFileNoExt + _wImgPrefExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'>'>>
       <</if>>
   <<else>>
      <<if _VIDEO_EXTENSIONS.includes(_wImgExt)>>
       <<= '<video src="' + _wImgFileNoExt + _wImgExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + ".gif" + '"\'></video>'>>
     <<else>>
       <<= '<img src="' + _wImgFileNoExt + _wImgExt + '" onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + ".gif" + '"\'>'>>
     <</if>>
   <</if>>
<</nobr>><</widget>>
I'm not sure what your trying to accomplish here
Code:
        <<if _VIDEO_EXTENSIONS.includes(_wImgPrefExt)>>
          <<if _VIDEO_EXTENSIONS.includes(_wImgExt)>>
            <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.src="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
          <<else>>
            <<= '<video src="' + _wImgFileNoExt + _wImgPrefExt + '" muted=true loop=true autoplay=true onerror=\'this.onerror=null;this.poster="' + _wImgFileNoExt + _wImgExt + '"\'></video>'>>
          <</if>>
       <<else>>
as the two video tag lines are the same (just with differing error messages).
I've implemented a simplified version that doesn't use a preferred extension, as it seems like an unneeded complication to me.
Also, technically it should be
Code:
<video ... muted="muted" loop="loop" autoplay="autoplay" ... ></video>
or just
Code:
<video ... muted loop autoplay ... ></video>
 
4.20 star(s) 56 Votes