Black CTI-Script Teaseviewer [1.7.7][Discontinued]

Talk about CTI.
Simon
Created software for the community!
Created software for the community!
Keys: 0,02 
Posts: 117
Joined: 23 Nov 2015, 13:34
Location: Netherlands
Gender: Male
Type: Switch
Orientation: Bi
Contact:

Presenting
Image
Black CTIS Viewer
Discontinued
Hey y'all, I've decided to discontinue Black. It was a fun project but the codebase is fairly convoluted and I'm not having much fun cleaning it up, or refactoring large parts of it. Also now Rothaon is doing something similar and CTI2 becomes better and better, I feel like we really don't need me picking this up again. So, yeah.


Introduction
Hello all, it's a pleasure to be writing this: I've made a teaseviewer.
Now you might be asking yourself, "another one?" Which is fair but not totally justified.
You see this teaseviewer besides showing regular CTI cards, can also show a new type of CTI card: CTI Script Cards (CTIS for short).

As the name implies a CTIS card can run a small script when added to the tease.
The system was inspired by 0131's CTI2, but made in a way so people can easily share them.
Also they're slightly easier to 'program' than CTI2 cards.

Black also comes with a built-in cardcreator for CTIS cards, and a detailed guide on how to make cards can be found here.
New in 1.7
  • Added storage clean-up to keep your storage file small
  • Added FLAGS parameter, more info on the wiki
  • Added Ratio mode for categories in setup
  • Added category setup saving/loading
  • Added light themes
  • Added a setting for instant ticker updates (update the ticker as soon as slidetime/strokecount changes)
  • Added the option for a custom ticker noise
  • Added configurable key binds
New in 1.6 | +
  • Added an about page
  • Added a card creator for creating card en mass (in batches)
  • Added fallback mechanism for broken CTIS cards
New in 1.5 | +
  • Added ways for cards to contact the user via the "contact" TYPE.
  • Added CONDITIONAL values for strokecount, slidetime, next/last instruction, chastity
  • Added slot system for items
  • Added remove option for items (without keys)
  • Added warning if a card category didn't return any cards
  • Added options to sort cards by filename or "order" property
  • Added option to disable hardware acceleration

Getting started
There's a lot more to tell, but the most effective way for one to learn about it is by experiencing it.
How? Two steps:
  1. Download Black from here: https://github.com/Galactic-Cat/Black/releases/latest (Windows users can download the .exe file, Linux users can download the .zip package)
  2. Download the CTIS Core set (this is a carboncopy of the normal Core set, only with CTIS cards) here: https://www.dropbox.com/s/r1ftm4sqd6jso ... e.zip?dl=0
So I didn't fully test CTIS Core, so if there's a card that doesn't seem to work properly, please report it. Last updated: Feb 20 - 2019

Other CTIS decks
CTIS Surge by TauthEicse

Want to know more?
Feel free to ask me here, or via PM.
You can also check out the half-done wiki here.

~ Simon

P.S. Something special: if you make 3 or more CTIS cards, you can PM me, and I'll send you a card from my 'legendary' set. This card will be a special CTIS card, which will do something special (something undocumented but really fun).
Last edited by Simon on 22 Jun 2020, 18:44, edited 37 times in total.
Always watching.
0131
Site Admin
Keys: 1 036,90 
Posts: 1021
Joined: 06 Jun 2015, 18:12
Gender: Female
Type: Switch
Orientation: Bi
Contact:

Card Creator

Well done :Cheerleader: , added your Teaseviewer to the getting started page!

Which language do you use?
༼ つ ◕_◕ ༽つ Can i has CTI pls
Simon
Created software for the community!
Created software for the community!
Keys: 0,02 
Posts: 117
Joined: 23 Nov 2015, 13:34
Location: Netherlands
Gender: Male
Type: Switch
Orientation: Bi
Contact:

So Black is an Electron application, which is basically NodeJS, HTML, javascript all on a Chromium (blink-engine) base.
All logic, therefor is handled in JavaScript, but the CTIS cards are just glorified JSON files which are parsed in to javascript objects.
The javascript object is then parsed by a javascript function which has basically like 80% hardcoded in.
Always watching.
0131
Site Admin
Keys: 1 036,90 
Posts: 1021
Joined: 06 Jun 2015, 18:12
Gender: Female
Type: Switch
Orientation: Bi
Contact:

Card Creator

Hmm doesn't run under my Win Xp VM have to switch to a newer OS VM later ^^
༼ つ ◕_◕ ༽つ Can i has CTI pls
playsafe
Talented!
Talented!
Keys: 405,96 
Posts: 58
Joined: 26 Mar 2016, 11:31
Gender: Male
Type: Switch
Orientation: Straight
Contact:

Nice!
First things first, the installation won't let me choose a folder. I didn't find it in Program Files and wouldn't want any programms installed on my SSD drive.
The design is nice, I like the minimalist style, but missed to fill some boxes at first.
The Settings and About windows are blank.
I don't have any punishment cards, should I download them anywhere?
Pausing a tease will lock the needed keyboard keys. Interesting, so I could control the tease while eg having an adult movie in front of it. On the other hand, I had to quit the tease to write this feedback, because eg [Space] or were blocked.

The categories got bugs:
- While creating a tease the loading screen can get stuck. Resetting categories randomly to 0 fixes that problem, it doesn't seem to be a specific one.
- It doesn't matter what categories I'll select, the tease will give me random instructions: eg when selecting 1 Edge category it gave me a Key instruction, restarting the tease without changes gave me a StrokeIt instruction.
- And if I still remember correctly selecting two different categories can give me only one instruction card in total, instead of two.


edited a hundred times, didn't test the Card Maker or the actual cards/gameplay
Simon
Created software for the community!
Created software for the community!
Keys: 0,02 
Posts: 117
Joined: 23 Nov 2015, 13:34
Location: Netherlands
Gender: Male
Type: Switch
Orientation: Bi
Contact:

playsafe wrote:First things first, the installation won't let me choose a folder. I didn't find it in Program Files and wouldn't want any programms installed on my SSD drive.
Ah yes, the installer was a bit of a bodge, and will install it into your 'Program Files x86' folder on the drive you boot Windows from (C:), I'll look into selecting install paths later.
For now to install Black anywhere you like you can download this zip file and extract it anywhere.
playsafe wrote:The Settings and About windows are blank.
Ah yes, I didn't add those yet, I should've probably just hidden them. I didn't really have any settings to be adjusted in the settings menu, so I just left it.
playsafe wrote:I don't have any punishment cards, should I download them anywhere?
Yes, you can just use the regular old punishment cards, which you find here, provided by 0131.
playsafe wrote:Pausing a tease will lock the needed keyboard keys. Interesting, so I could control the tease while eg having an adult movie in front of it. On the other hand, I had to quit the tease to write this feedback, because eg [Space] or [ i ] were blocked.
Ah yes, [o] is blocked too! This is because the electron framework uses something called GlobalShortcut as pretty much it's only shortcut option. Sadly this leads to this behaviour, I'll promise to find a fix soon.
playsafe wrote:- While creating a tease the loading screen can get stuck. Resetting categories randomly to 0 fixes that problem, it doesn't seem to be a specific one.
So this is probably an error with the file selector, which I've struggled with in the past. You should make sure your categorie names correspond with the folder names for now.
Also when running into this again, you can press Control+Shift+C to open the Developer Console. There you'll probably find a red or yellow error message near the bottom.
If you could send me that message or a screencap of it, it would help a lot.
playsafe wrote:It doesn't matter what categories I'll select, the tease will give me random instructions: eg when selecting 1 Edge category it gave me a Key instruction, restarting the tease without changes gave me a StrokeIt instruction.
This is a bug I've never run into myself before, but I'll take a look at what might be causing it.
playsafe wrote:And if I still remember correctly selecting two different categories can give me only one instruction card in total, instead of two.
This shouldn't be possible but, again the tease generation is a hot mess. It should work, but unfortunaly that doesn't seem to be the case.

Again, thanks for giving it a whirl. If you ever find yourself stuck or run on an error you can press:
Control + Shift + C (or Control + Shift + Y in Tease)
to open the Developer Console. There you can find a truckload of debug messages, but you should be looking for the red errors or the yellow warnings.
If you pass those on it will give me a lead as to where to start debugging any problems.
Always watching.
playsafe
Talented!
Talented!
Keys: 405,96 
Posts: 58
Joined: 26 Mar 2016, 11:31
Gender: Male
Type: Switch
Orientation: Straight
Contact:

Great, thank you for the detailed reply.
Beside the bug report, is there a way to exchange the ticking sound with eg a wooden metronome instead of the 'classic' harsh one?

1) I've selected 1 Edge and 2 Stroke It, the tease didn't load
| +
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:44 <tease.js / generateFileList> Function called with arguments: Object {picturePath: "D:\Adult\Pics\1 Mixed favs", cardPath: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards", categories: Object}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Pics\1 Mixed favs", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\chance to cum", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\chastity belt", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\edge", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\humiliation", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\key", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\nice mistress", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\rough mistress", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\special", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\stroke it", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:88 <tease.js / generateFileList> Going into swifty mode with the following data: Object {eM: Object, raw: Object, ratio: 2, gameCards: 3, oL: Object…}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc11 is: Object {name: "Special", amount: 0}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc5 is: Object {name: "Edge", amount: 1}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc6 is: Object {name: "Getting Into Character", amount: 0}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc2 is: Object {name: "Chastity Belt", amount: 0}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc3 is: Object {name: "Delusional", amount: 0}
VM1234:146 <setup.html / [#startTease]> We got a filelist!
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:121 <tease.js / findCTIS> Function called with 'fileList' argument as: ["D:\\Adult\\Pics\\1 Mixed favs\\Eternal_Dym_Zsanett-Tormay_high_0003.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\zsanett-nartalis-006.jpg", "D:\\Adult\\Games\\sonstige\\0131's Teaseviewer\\Bl…ards\\special\\CTIS.Simon.CTIS Core.Special.1.png", "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_nh9r1rGh2b1sfkfqio1_500.jpg", "D:\\Adult\\Games\\sonstige\\0131's Teaseviewer\\Bl…tion Cards\\edge\\CTIS.Simon.CTIS Core.Edge.3.png", "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_o2fae53HUZ1s63s56o1_500.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_oh7sy8Vtn41uhfkqmo1_1280.jpg", "D:\\Adult\\Games\\sonstige\\0131's Teaseviewer\\Bl…ty belt\\CTIS.Simon.CTIS Core.Chastity Belt.5.png", "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_nsb39ayCpJ1s2rw5ho1_1280.jpg", undefined]
VM1234:160 Ran into undefined file name at index
$.when.then @ VM1234:160
j @ D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:2
k @ D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:2

2) Tried it with 2 Stroke It cards, tease loaded
| +
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:44 <tease.js / generateFileList> Function called with arguments: Object {picturePath: "D:\Adult\Pics\1 Mixed favs", cardPath: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards", categories: Object}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Pics\1 Mixed favs", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\chance to cum", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\chastity belt", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\edge", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\humiliation", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\key", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\nice mistress", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\rough mistress", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\special", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\stroke it", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:88 <tease.js / generateFileList> Going into swifty mode with the following data: Object {eM: Object, raw: Object, ratio: 4, gameCards: 2, oL: Object…}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc10 is: Object {name: "Rough Mistress", amount: 0}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc4 is: Object {name: "Dilemma", amount: 0}
VM1236:146 <setup.html / [#startTease]> We got a filelist!
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:121 <tease.js / findCTIS> Function called with 'fileList' argument as: ["D:\\Adult\\Pics\\1 Mixed favs\\tumblr_nj5w17Xn4G1sux3qko1_500.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_o5yzjnxWdI1s2rw5ho1_1280.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\58.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\MetArt_Cosmima_Zsanett-Tormay_by_Arkisi_high_0009.jpg", "D:\\Adult\\Games\\sonstige\\0131's Teaseviewer\\Bl…tress\\CTIS.Simon.CTIS Core.Rough Mistress.43.png", "D:\\Adult\\Pics\\1 Mixed favs\\5677ed8b86ddb.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\MetArt_Cosmima_Zsanett-Tormay_by_Arkisi_high_0118.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_o2fae53HUZ1s63s56o1_500.jpg", "D:\\Adult\\Pics\\1 Mixed favs\\zsanett-odrycia-004.jpg"]
VM1236:151 <setup.html / [#startTease]> We got a ctisList!
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:141 <tease.js / TeaseMaster> Function called with arguments: Object {teaseParams: Object, fileList: Array[9], ctisList: Object, icl: Object}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:155 <tease.js / TeaseMaster> Window URL set to: file://D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\resources\app.asar\assets/src/html/tease.html
2b) ...but only 1 Mistress instead of 2 Stroke It cards
| +
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:44 <tease.js / generateFileList> Function called with arguments: ObjectcardPath: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards"categories: Objectcc0: Objectcc1: Objectcc2: Objectamount: 0name: "Chastity Belt"__proto__: Objectcc3: Objectcc4: Objectcc5: Objectcc6: Objectcc7: Objectcc8: Objectcc9: Objectcc10: Objectcc11: Objectcc12: Objectcc13: Objectcc14: Object__proto__: ObjectpicturePath: "D:\Adult\Pics\1 Mixed favs"__proto__: Object
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Pics\1 Mixed favs", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\chance to cum", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\chastity belt", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\edge", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\humiliation", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\key", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\nice mistress", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\rough mistress", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\special", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:19 <tease.js / getPictures> Function called with arguments: Object {path: "D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Instruction Cards\stroke it", recursive: true}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:88 <tease.js / generateFileList> Going into swifty mode with the following data: Object {eM: Object, raw: Object, ratio: 4, gameCards: 2, oL: Object…}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc10 is: Object {name: "Rough Mistress", amount: 0}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:92 Selected categorie cc4 is: Object {name: "Dilemma", amount: 0}
VM1236:146 <setup.html / [#startTease]> We got a filelist!
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:121 <tease.js / findCTIS> Function called with 'fileList' argument as: Array[9]0: "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_nj5w17Xn4G1sux3qko1_500.jpg"1: "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_o5yzjnxWdI1s2rw5ho1_1280.jpg"2: "D:\\Adult\\Pics\\1 Mixed favs\\58.jpg"3: "D:\\Adult\\Pics\\1 Mixed favs\\MetArt_Cosmima_Zsanett-Tormay_by_Arkisi_high_0009.jpg"4: "D:\\Adult\\Games\\sonstige\\0131's Teaseviewer\\Black CTIs Viewer\\Instruction Cards\\rough mistress\\CTIS.Simon.CTIS Core.Rough Mistress.43.png"5: "D:\\Adult\\Pics\\1 Mixed favs\\5677ed8b86ddb.jpg"6: "D:\\Adult\\Pics\\1 Mixed favs\\MetArt_Cosmima_Zsanett-Tormay_by_Arkisi_high_0118.jpg"7: "D:\\Adult\\Pics\\1 Mixed favs\\tumblr_o2fae53HUZ1s63s56o1_500.jpg"8: "D:\\Adult\\Pics\\1 Mixed favs\\zsanett-odrycia-004.jpg"length: 9__proto__: Array[0]
VM1236:151 <setup.html / [#startTease]> We got a ctisList!
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:141 <tease.js / TeaseMaster> Function called with arguments: Object {teaseParams: Object, fileList: Array[9], ctisList: Object, icl: Object}
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:155 <tease.js / TeaseMaster> Window URL set to: file://D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\resources\app.asar\assets/src/html/tease.html
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:14 swap called Swapper {id: "swapper", location: "./html/", current: "setup"} teaseend
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\'Black' CTI-Script Teaseviewer v1.1.1\…:30 swap finished teaseend
I might have seen it the other way, too. Having 2 intruction cards in the menu and 3 loaded inside the tease.
Simon
Created software for the community!
Created software for the community!
Keys: 0,02 
Posts: 117
Joined: 23 Nov 2015, 13:34
Location: Netherlands
Gender: Male
Type: Switch
Orientation: Bi
Contact:

playsafe wrote:I didn't find it in Program Files
I just realized it might be in a folder called 'Catworks'

Also, I've just pushed version 1.1.2, which should fix some of the issues you pointed out, let me know how it goes.
Always watching.
playsafe
Talented!
Talented!
Keys: 405,96 
Posts: 58
Joined: 26 Mar 2016, 11:31
Gender: Male
Type: Switch
Orientation: Straight
Contact:

Simon wrote:
playsafe wrote:I didn't find it in Program Files
I just realized it might be in a folder called 'Catworks'

Also, I've just pushed version 1.1.2, which should fix some of the issues you pointed out, let me know how it goes.
Ah, Catworks? ^^ Could've found it with "sorting by date"

- The red Browse- and Generate-buttons won't do anything:
| +
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:14 swap called Swapper continue
index.html:123 <index.html> Loaded everything we needed or something!
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:30 swap finished continue
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:14 swap called Swapper profile
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:30 swap finished profile
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:14 swap called Swapper home
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:30 swap finished home
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:14 swap called Swapper profile
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:30 swap finished profile
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:14 swap called Swapper home
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:30 swap finished home
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:14 swap called Swapper setup
(unknown) Uncaught TypeError: Cannot read property 'indexOf' of undefined
at <anonymous>:83:76
at p (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:2:523)
at Ja (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:3:15829)
at r.fn.init.append (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:3:17100)
at r.fn.init.<anonymous> (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:3:18204)
at T (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:3:398)
at r.fn.init.html (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:3:17882)
at Object.<anonymous> (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:4:19115)
at i (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:2:28017)
at Object.fireWith [as resolveWith] (D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\external\jquery\jquery.min.js:2:28783)
D:\Adult\Games\sonstige\0131's Teaseviewer\Black CTIs Viewer\Black CTI-Script Teaseviewer v1.1.2\resources\app.asar\assets\catworks\swapper.js:30 swap finished setup
Also there's still a bug I've forgotten to mention in the previous version:
- When hitting "reset to default" and revisiting this page, then the amount of categories will be duplicated.

Is there a way to delete all of ones settings to test the program properly? Even when deleting/renaming the installation folder the settings were stored somewhere else.
Simon
Created software for the community!
Created software for the community!
Keys: 0,02 
Posts: 117
Joined: 23 Nov 2015, 13:34
Location: Netherlands
Gender: Male
Type: Switch
Orientation: Bi
Contact:

playsafe wrote:The red Browse- and Generate-buttons won't do anything.
Also there's still a bug I've forgotten to mention in the previous version:
- When hitting "reset to default" and revisiting this page, then the amount of categories will be duplicated.

Is there a way to delete all of ones settings to test the program properly? Even when deleting/renaming the installation folder the settings were stored somewhere else.
Hmm, I can't seem to recreate any of these bugs. Could you try uninstalling and then re-installing. Also can delete your user settings in the AppData/roaming folder.
If you've never played minecraft that's

Code: Select all

C:\Users\[YOUR USERNAME HERE]\AppData\roaming\Black CTIS Viewer
You can also get there by pressing Win+R on your keyboard and entering

Code: Select all

%appdata%
Also I wan't to thank you for keeping it up even though it must be a bit tedious.
Always watching.
Post Reply

Return to “CTI - Talk”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 6 guests