Understanding One Touch Binary Options

An introduction to Linux through Windows Subsystem for Linux

I'm working as an Undergraduate Learning Assistant and wrote this guide to help out students who were in the same boat I was in when I first took my university's intro to computer science course. It provides an overview of how to get started using Linux, guides you through setting up Windows Subsystem for Linux to run smoothly on Windows 10, and provides a very basic introduction to Linux. Students seemed to dig it, so I figured it'd help some people in here as well. I've never posted here before, so apologies if I'm unknowingly violating subreddit rules.

An introduction to Linux through Windows Subsystem for Linux

GitHub Pages link

Introduction and motivation

tl;dr skip to next section
So you're thinking of installing a Linux distribution, and are unsure where to start. Or you're an unfortunate soul using Windows 10 in CPSC 201. Either way, this guide is for you. In this section I'll give a very basic intro to some of options you've got at your disposal, and explain why I chose Windows Subsystem for Linux among them. All of these have plenty of documentation online so Google if in doubt.

Setting up WSL

So if you've read this far I've convinced you to use WSL. Let's get started with setting it up. The very basics are outlined in Microsoft's guide here, I'll be covering what they talk about and diving into some other stuff.

1. Installing WSL

Press the Windows key (henceforth Winkey) and type in PowerShell. Right-click the icon and select run as administrator. Next, paste in this command:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 
Now you'll want to perform a hard shutdown on your computer. This can become unecessarily complicated because of Window's fast startup feature, but here we go. First try pressing the Winkey, clicking on the power icon, and selecting Shut Down while holding down the shift key. Let go of the shift key and the mouse, and let it shutdown. Great! Now open up Command Prompt and type in
wsl --help 
If you get a large text output, WSL has been successfully enabled on your machine. If nothing happens, your computer failed at performing a hard shutdown, in which case you can try the age-old technique of just holding down your computer's power button until the computer turns itself off. Make sure you don't have any unsaved documents open when you do this.

2. Installing Ubuntu

Great! Now that you've got WSL installed, let's download a Linux distro. Press the Winkey and type in Microsoft Store. Now use the store's search icon and type in Ubuntu. Ubuntu is a Debian-based Linux distribution, and seems to have the best integration with WSL, so that's what we'll be going for. If you want to be quirky, here are some other options. Once you type in Ubuntu three options should pop up: Ubuntu, Ubuntu 20.04 LTS, and Ubuntu 18.04 LTS.
![Windows Store](https://theshepord.github.io/intro-to-WSL/docs/images/winstore.png) Installing plain-old "Ubuntu" will mean the app updates whenever a new major Ubuntu distribution is released. The current version (as of 09/02/2020) is Ubuntu 20.04.1 LTS. The other two are older distributions of Ubuntu. For most use-cases, i.e. unless you're running some software that will break when upgrading, you'll want to pick the regular Ubuntu option. That's what I did.
Once that's done installing, again hit Winkey and open up Ubuntu. A console window should open up, asking you to wait a minute or two for files to de-compress and be stored on your PC. All future launches should take less than a second. It'll then prompt you to create a username and password. I'd recommend sticking to whatever your Windows username and password is so that you don't have to juggle around two different usepassword combinations, but up to you.
Finally, to upgrade all your packages, type in
sudo apt-get update 
And then
sudo apt-get upgrade 
apt-get is the Ubuntu package manager, this is what you'll be using to install additional programs on WSL.

3. Making things nice and crispy: an introduction to UNIX-based filesystems

tl;dr skip to the next section
The two above steps are technically all you need for running WSL on your system. However, you may notice that whenever you open up the Ubuntu app your current folder seems to be completely random. If you type in pwd (for Print Working Directory, 'directory' is synonymous with 'folder') inside Ubuntu and hit enter, you'll likely get some output akin to /home/. Where is this folder? Is it my home folder? Type in ls (for LiSt) to see what files are in this folder. Probably you won't get any output, because surprise surprise this folder is not your Windows home folder and is in fact empty (okay it's actually not empty, which we'll see in a bit. If you type in ls -a, a for All, you'll see other files but notice they have a period in front of them. This is a convention for specifying files that should be hidden by default, and ls, as well as most other commands, will honor this convention. Anyways).
So where is my Windows home folder? Is WSL completely separate from Windows? Nope! This is Windows Subsystem for Linux after all. Notice how, when you typed pwd earlier, the address you got was /home/. Notice that forward-slash right before home. That forward-slash indicates the root directory (not to be confused with the /root directory), which is the directory at the top of the directory hierarchy and contains all other directories in your system. So if we type ls /, you'll see what are the top-most directories in your system. Okay, great. They have a bunch of seemingly random names. Except, shocker, they aren't random. I've provided a quick run-down in Appendix A.
For now, though, we'll focus on /mnt, which stands for mount. This is where your C drive, which contains all your Windows stuff, is mounted. So if you type ls /mnt/c, you'll begin to notice some familiar folders. Type in ls /mnt/c/Users, and voilà, there's your Windows home folder. Remember this filepath, /mnt/c/Users/. When we open up Ubuntu, we don't want it tossing us in this random /home/ directory, we want our Windows home folder. Let's change that!

4. Changing your default home folder

Type in sudo vim /etc/passwd. You'll likely be prompted for your Ubuntu's password. sudo is a command that gives you root privileges in bash (akin to Windows's right-click then selecting 'Run as administrator'). vim is a command-line text-editing tool, which out-of-the-box functions kind of like a crummy Notepad (you can customize it infinitely though, and some people have insane vim setups. Appendix B has more info). /etc/passwd is a plaintext file that historically was used to store passwords back when encryption wasn't a big deal, but now instead stores essential user info used every time you open up WSL.
Anyway, once you've typed that in, your shell should look something like this: ![vim /etc/passwd](https://theshepord.github.io/intro-to-WSL/docs/images/vim-etc-passwd.png)
Using arrow-keys, find the entry that begins with your Ubuntu username. It should be towards the bottom of the file. In my case, the line looks like
theshep:x:1000:1000:,,,:/home/pizzatron3000:/bin/bash 
See that cringy, crummy /home/pizzatron3000? Not only do I regret that username to this day, it's also not where we want our home directory. Let's change that! Press i to initiate vim's -- INSERT -- mode. Use arrow-keys to navigate to that section, and delete /home/ by holding down backspace. Remember that filepath I asked you to remember? /mnt/c/Users/. Type that in. For me, the line now looks like
theshep:x:1000:1000:,,,:/mnt/c/Users/lucas:/bin/bash 
Next, press esc to exit insert mode, then type in the following:
:wq 
The : tells vim you're inputting a command, w means write, and q means quit. If you've screwed up any of the above sections, you can also type in :q! to exit vim without saving the file. Just remember to exit insert mode by pressing esc before inputting commands, else you'll instead be writing to the file.
Great! If you now open up a new terminal and type in pwd, you should be in your Window's home folder! However, things seem to be lacking their usual color...

5. Importing your configuration files into the new home directory

Your home folder contains all your Ubuntu and bash configuration files. However, since we just changed the home folder to your Window's home folder, we've lost these configuration files. Let's bring them back! These configuration files are hidden inside /home/, and they all start with a . in front of the filename. So let's copy them over into your new home directory! Type in the following:
cp -r /home//. ~ 
cp stands for CoPy, -r stands for recursive (i.e. descend into directories), the . at the end is cp-specific syntax that lets it copy anything, including hidden files, and the ~ is a quick way of writing your home directory's filepath (which would be /mnt/c/Users/) without having to type all that in again. Once you've run this, all your configuration files should now be present in your new home directory. Configuration files like .bashrc, .profile, and .bash_profile essentially provide commands that are run whenever you open a new shell. So now, if you open a new shell, everything should be working normally. Amazing. We're done!

6. Tips & tricks

Here are two handy commands you can add to your .profile file. Run vim ~/.profile, then, type these in at the top of the .profile file, one per line, using the commands we discussed previously (i to enter insert mode, esc to exit insert mode, :wq to save and quit).
alias rm='rm -i' makes it so that the rm command will always ask for confirmation when you're deleting a file. rm, for ReMove, is like a Windows delete except literally permanent and you will lose that data for good, so it's nice to have this extra safeguard. You can type rm -f to bypass. Linux can be super powerful, but with great power comes great responsibility. NEVER NEVER NEVER type in rm -rf /, this is saying 'delete literally everything and don't ask for confirmation', your computer will die. Newer versions of rm fail when you type this in, but don't push your luck. You've been warned. Be careful.
export DISPLAY=:0 if you install XLaunch VcXsrv, this line allows you to open graphical interfaces through Ubuntu. The export sets the environment variable DISPLAY, and the :0 tells Ubuntu that it should use the localhost display.

Appendix A: brief intro to top-level UNIX directories

tl;dr only mess with /mnt, /home, and maybe maybe /usr. Don't touch anything else.
  • bin: binaries, contains Ubuntu binary (aka executable) files that are used in bash. Here you'll find the binaries that execute commands like ls and pwd. Similar to /usbin, but bin gets loaded earlier in the booting process so it contains the most important commands.
  • boot: contains information for operating system booting. Empty in WSL, because WSL isn't an operating system.
  • dev: devices, provides files that allow Ubuntu to communicate with I/O devices. One useful file here is /dev/null, which is basically an information black hole that automatically deletes any data you pass it.
  • etc: no idea why it's called etc, but it contains system-wide configuration files
  • home: equivalent to Window's C:/Users folder, contains home folders for the different users. In an Ubuntu system, under /home/ you'd find the Documents folder, Downloads folder, etc.
  • lib: libraries used by the system
  • lib64 64-bit libraries used by the system
  • mnt: mount, where your drives are located
  • opt: third-party applications that (usually) don't have any dependencies outside the scope of their own package
  • proc: process information, contains runtime information about your system (e.g. memory, mounted devices, hardware configurations, etc)
  • run: directory for programs to store runtime information.
  • srv: server folder, holds data to be served in protocols like ftp, www, cvs, and others
  • sys: system, provides information about different I/O devices to the Linux Kernel. If dev files allows you to access I/O devices, sys files tells you information about these devices.
  • tmp: temporary, these are system runtime files that are (in most Linux distros) cleared out after every reboot. It's also sort of deprecated for security reasons, and programs will generally prefer to use run.
  • usr: contains additional UNIX commands, header files for compiling C programs, among other things. Kind of like bin but for less important programs. Most of everything you install using apt-get ends up here.
  • var: variable, contains variable data such as logs, databases, e-mail etc, but that persist across different boots.
Also keep in mind that all of this is just convention. No Linux distribution needs to follow this file structure, and in fact almost all will deviate from what I just described. Hell, you could make your own Linux fork where /mnt/c information is stored in tmp.

Appendix B: random resources

EDIT: implemented various changes suggested in the comments. Thanks all!
submitted by HeavenBuilder to linux4noobs [link] [comments]

How to generate (relative) secure paper wallets and spend them (Newbies)

How to generate (relative) secure paper walletsEveryone is invited to suggest improvements, make it easier, more robust, provide alternativers, comment on what they like or not, and also critizice it.
Also, this is a disclaimer: I'm new to all of this. First, I didn't buy a hardware wallet because they are not produce in my country and I couldnt' trust they are not tampered. So the other way was to generate it myself. (Not your keys not your money) I've instructed myself several weeks reading various ways of generating wallets (including Glacier). As of now, I think this is THE BEST METHOD for a non-technical person which is high security and low cost and not that much lenghty.
FAQs:Why I didn't use Coleman's BIP 39 mnemonic method? Basically, I dont know how to audit the code. As a downside, we will have to really write down accurately our keys having in mind that a mistype is fatal. Also, we should keep in mind that destruction of the key is fatal as well. The user has to secure the key from losing the keys, theft and destruction.
Lets start
You'll need:
Notes: We will be following https://www.swansontec.com/bitcoin-dice.html guidelines. We will be creating our own random key instead of downloading BitAddress javascript for safety reasons. Following this guideline lets you audit the code that will create the public address and bitcoin address. Its simple, short and you can always test the code by inputting a known private keys to tell if the bitcoin address generated is legit or not. This process is done offline, so your private key never touches the internet.
Steps
1. Download the bitcoin-bash-tools and dice2key scripts from Github, latest Ubuntu distribution, and LiLi, A software to install Ubuntu on our flash drive (easier than what is proposed on Swansontec)

2. Install the live environment in a CD or USB, and paste the tools we are going to use inside of it (they are going to be located in file://cdrom)

  • Open up LiLi and insert your flash drive.

  • Make sure you’ve selected the correct drive (click refresh if drive isn’t showing).
  • Choose “ISO/IMG/ZIP” and select the Ubuntu ISO file you’ve downloaded in the previous step.
  • Make sure only “Format the key in FAT32” is selected.
  • Click the lightning bolt to start the format and installation process
  • [https://99bitcoins.com/bitcoin-wallet/pape\](https://99bitcoins.com/bitcoin-wallet/pape)

    3. Open the Ubuntu environment in a offline computer that will never touch the internet again (there is some malware that infect the BIOS so doing it in your regular computer is not safe to my understanding)

    Restart your computer. Clicking F12 or F1 during the boot-up process will allow you to choose to run your operating system from your flash drive or CD. After the Ubuntu operating system loads you will choose the “try Ubuntu” option.
    4. Roll the dice 100 times and convert into a 32-byte hexadecimal number by using dice2key

    To generate a Bitcoin private key using normal, run the following command to convert the dice rolls into a 32-byte hexadecimal number:source dice2key (100 six-sided dice rolls)

    5. Run newBitcoinKey 0x + your private key and it will give you your: public address, bitcoin address and WIF.Save the Private Key and Bitcoin Address. Check several times that you handwritten it correctly. You can check by re entering the code in the console from your paper. (I recommend writing down the Private Key which is in HEX and not the WIF since this one is key sensitive and you can lose it, or write it wrong. Also, out of the private key you can get the WIF which will let you transfer your funds). If you lose your key, you lose your funds. Be careful.
    If auditing the code for this is not enough for you, you can also test the code by inputting a known private keys to tell if the bitcoin address generated is legit or not.
    I recommend you generate several keys and addresses as this process is not super easy to do. Remember that you should never reuse your paper wallets (meaning that you should empty all of the funds from this one adress if you are making a payment). As such, a couple of addresses come handy.
    At this point, there should be no way for information to leak out of the live CD environment. The live CD doesn't store anything on the hard disk, and there is no network connection. Everything that happens from now on will be lost when the computer is rebooted.
    Now, start the "Terminal" program, and type the following command:
    source ~/bitcoin.shThis will load the address-calculation script. Now, use the script to find the Bitcoin address for your private key:
    newBitcoinKey 0x(your dice digits)Replace the part that says "(your dice digits)" with 64 digits found by rolling your pair of hexadecimal dice 32 times. Be sure there is no space between the "0x" and your digits. When all is said and done, your terminal window should look like this:
    [email protected]:~$ source ~/[email protected]:~$ newBitcoinKey 0x8010b1bb119ad37d4b65a1022a314897b1b3614b345974332cb1b9582cf03536---secret exponent: 0x8010B1BB119AD37D4B65A1022A314897B1B3614B345974332CB1B9582CF03536public key: X: 09BA8621AEFD3B6BA4CA6D11A4746E8DF8D35D9B51B383338F627BA7FC732731 Y: 8C3A6EC6ACD33C36328B8FB4349B31671BCD3A192316EA4F6236EE1AE4A7D8C9compressed: WIF: L1WepftUBemj6H4XQovkiW1ARVjxMqaw4oj2kmkYqdG1xTnBcHfC bitcoin address: 1HV3WWx56qD6U5yWYZoLc7WbJPV3zAL6Hiuncompressed: WIF: 5JngqQmHagNTknnCshzVUysLMWAjT23FWs1TgNU5wyFH5SB3hrP bitcoin address: [email protected]:~$The script produces two public addresses from the same private key. The "compressed" address format produces smaller transaction sizes (which means lower transaction fees), but it's newer and not as well-supported as the original "uncompressed" format. Choose which format you like, and write down the "WIF" and "bitcoin address" on a piece of paper. The "WIF" is just the private key, converted to a slightly shorter format that Bitcoin wallet apps prefer.
    Double-check your paper, and reboot your computer. Aside from the copy on the piece of paper, the reboot should destroy all traces of the private key. Since the paper now holds the only copy of the private key, do not lose it, or you will lose the ability to spend any funds sent to the address!
    Conclusion
    With this method you are creating an airgapped environment that will never touch the internet. Also, we are checking that the code we use its not tampered. If this is followed strictly I see virtually no chances of your keys being hacked.
    How to spend your funds from a securely generated paper wallet.
    Almost all tutorials seen online, will let you import or sweep you private keys into the desktop wallet or mobile wallet which are hot wallets. In the meantime, you are exposed and all of your work to secure the cold storage is being thrown away. This method will let you sign the transaction offline (you will not expose your private key in an online system).
    You'll need:
    The source of this method is taken from CryptoGuide from Youtube https://www.youtube.com/watch?v=-9kf9LMnJpI&t=86s . Basically you can follow his video as it is foolproof. Please check that Electrum distribution is signed.
    The summarized steps are:
    Download Electrum on both devices and check its signed for safey.Disconnect your phone from the internet (flight mode= All connections off) and input your private key in ElectrumGenerate the transaction in your desktop and export it via QR (never leave unspent BTC or you will lose them)In your phone, open Electrum > Send > QR (this will import the transaction) and scan the desktop exported transactionSign the transaction in your phone.Export the signed transaction in QRLoad the signed transaction in the desktop Electrum and broadcast it to the network.Wait until 3 confirmations to connect your phone to the internet again.
    Ideas for improvement:
    So thats it. I hope someone can find this helpful or help in creating a better method. If you like, you can donate at 1Che7FG93vDsbes6NPBhYuz29wQoW7qFUH
    submitted by Heron-Express to Bitcoin [link] [comments]

    In-depth Review of Yandere Simulator Part 2: All the elimination methods

    Hello Osana once more. A while ago I made a review of my first impressions on the Osana demo, which you can read over here: https://www.reddit.com/Osana/comments/ikcxc4/first_impressions_indepth_review_of_yandere/?utm_source=share&utm_medium=web2x&context=3
    As you can see, my first time playing the game… wasn't that positive. I found many bugs and a lot of glaring issues about the game's design, and at the end I came to the conclusion that Yandere Simulator is far from being 91% complete. A lot of its current features need to be reworked, rebalanced, and improved, a lot of new features are needed, and if we add to this all the rival-specific elimination methods and the multiple endings planned, it's hard to see this game being anywhere close to finished. It is still a very amateurish product, and I hope those working on it can see that and making the necessary adjustments.
    Some bugs have already been fixed, but for that I'd have to redownload the game (pro tip: bug fixes should be a patch, never force players to redownload the entire thing).
    Because my previous attempt at eliminating Osana failed, mostly due to me not knowing the game's most hidden mechanics and failing, I've decided I would test out every elimination method but this time using guides. In this review I'll be analyzing each method, trying to be as brief as possible. This will be a long review but hopefully I can make it bearable for you.
    --------------------------------------------------------------------
    Matchmaking Osana
    Because Matchmaking doesn't require me to eliminate Raibaru, I've decided this would be the first method I'll use. However I wasn't very eager to try it out, as it seems quite repetitive. First off: stalking Osana to see her likes and dislikes is a good idea, in theory. Unfortunately, if the player is caught off doing other stuff, they can miss the opportunity. The conversations should not happen at such specific times, as the player has no way of knowing when these interactions will take place. And, indeed, because I missed the Monday interactions, I had to buy info from Info-chan which is much less entertaining.
    The "follow me" mechanic is confusing. It's easy to get lost in the school, so most of my time was spent trying to find the library, then running back to the suitor to make him follow me again. Why is there a timer to count down when the guy is following you? I understand realism and avoiding exploits, but when it's so easy to just run back and talk to him again it only seems like a waste of time.
    Most of the lunchtime was spent on me trying to talk to Osana and do her task. However, she gave me a line of how she's busy right now and can't talk, forcing me to skip ahead time without me really knowing why Osana refused to talk. But, once the task was done, there was nothing else I could do, other than just go home.
    The following days were spent in a repetitive cycle. Talk to the suitor, talk to Osana, select good answers, skip to the next day. Having to constantly wait for slow animations makes it even worse. Nothing about this particular method was noteworthy, fun, or memorable. At times, it felt like filler gameplay; no more than something to keep the game going.
    At the end, because I didn't wait for the ending sequence and instead skipped ahead, the game glitched out. My fault perhaps, for refusing to download the latest build… but considering it wasn't a simple bug to miss, I have my doubts.
    In summary: Matchmaking is a boring, repetitive elimination method that offers no real or fun challenge.
    How would I improve it?: In a way, the repetitiveness could be tolerable if there were more in-between events for the player to do. Basically it stems from what I mentioned in the previous review, there's nothing to do at school once you've completed your objective. If, instead, I had to fix this method as it is, I would make it more like a visual novel. Add more of a conversation. Allow the player to think through their answers based on where the conversation is going. Perhaps make Osana take the initiative at some point and have the suitor respond accordingly, instead of it being the other way around. And more importantly, don't make the bar at the top raise or decrease with each "good" answer; instead, I would make it so it raises a specific amount at the end of the date, allowing for more of a challenge but also a margin of error. Easy should not equal boring.
    I decided to download the September 22nd build (the time I'm typing this review). Fun fact: my browser recognizes it as a virus LOL.
    --------------------------------------------------------------------
    Attacking Osana
    Before I said I couldn't eliminate Osana because the game didn't allow me to eliminate Raibaru first. Well, guess what, I managed to kill Osana… Using exploits. After successfully matchmaking her with her suitor, Raibaru goes away. Eliminating the suitor is easy, and a friday event makes it so Musume separates them. With this, I could use the same trick to steal a phone: drop water onto Osana and killing her in the baths. Later it was only a matter of getting a clean uniform and dispose of the evidence.
    Admittedly, this was slightly more entertaining than the previous methods. When I saw Musume asking Osana to follow her, I saw the opportunity. It was something made with exploits, but at least it was interesting. If the game was made like that, with more opportunities and freedom to the player, it would be much more fun.
    However it was still an exploit so I did it the "intended" way. The first step was to get rid of Raibaru, but the only way to get rid of her permanently was to lower her reputation. The first two days were quite a tedious grind, of improving my own reputation and gossiping about Raibaru. This mechanic has the same issue as matchmaking: it's just grind, there is nothing to spice up the gameplay. Either way, I did that and next day Raibaru was gone, so that was cool.
    The rest was simple enough. I made Osana follow me to a hidden place near the furnace (inside that garden, hint hint) so no students would see her corpse, then I fought all the delinquents to make them go away (something I wouldn't have known, hadn't I been following development of the game). Unfortunately, as I was carrying Osana's corpse, a student council girl saw me, getting me an instant game over with no way for me to defend myself. Next try, a regular student saw me and because he ran away to fight against me I had to kill him. Sure it was a sloppy murder but at least it worked.
    For some reason, though, after everything was done, a teacher called the police because of a "mysterious bloodstain," despite the fact that I'm certain I cleaned everything, even made sure to double-check with yandere vision.
    The end was a bit anticlimactic. Not sure what else was I expecting, but considering it's just the demo I'll let it slide.
    In summary: The gameplay here was decent. Nothing to write home about, but nothing too terrible either. Raibaru is still a pretty boring/tedious obstacle, and I would argue it would be better if she wasn't there.
    How would I improve it?: First, remove the instant game over when a student council member sees Ayano. Players should have a way to defend themselves, even if it's a bit more difficult than a regular student. Also, the consequences can be much bigger when they are killed, so the player would want to avoid being seen by them. Second, make bloodstains more visible in yandere vision, either that or make small bloodstains unnoticeable. Third, the "follow me" mechanic is a bit broken. It's easy to find a concealed spot and kill Osana there. Working around her schedule might be a solution, but make sure the player has access to this information. Fourth, less time to murder your rival would be a good idea. Before school there's two in-game hours to do whatever you want, more than enough to complete this elimination method. And fifth, add more ways to decrease reputation, because the current method is no more than "select option A then option B" over and over.
    Bear in mind 3rd and 4th suggestions would not work well for Osana as the tutorial rival, but rather, for future ones. That being said, some systems can be reworked so even the easy rival is fun, even for veteran players.
    --------------------------------------------------------------------
    Befriend Osana
    Some people called this the "best elimination method" so we'll see. Restart the week my boys.
    I found a bug with the topic not unlocking even after eavesdropping on the second Monday conversation, which is a bit annoying. After restarting the day, I kept going with the scheme as planned. It was strange how I couldn't put a note in Osana's locker, instead I had to find it first using the menu, then put the note, but details.
    As I was waiting I pushed a student off the rooftop, just for the giggles, and the police came just in time for my meeting with Osana. Thought that was funny and decided to share.
    The rest of the gameplay is basically an interactive cutscene. Unlike murder, where you have to be prepared for unexpected circumstances, this follows a very detailed plan. The idea of visiting the stalker's house is quite interesting, but again, no more than a cutscene. If this could be reworked I can see it being quite fun, but as I was playing I never felt the sort of adrenaline expected from a stealthy side-mission like this one.
    By the way, the voice acting of the stalker's mom and sister is on point.
    There's no real reason to avoid the stalker seeing you, as the game progresses the exact same way regardless. Hopefully this is because something is planned for future weeks.
    That being said I have to wonder why the final cutscene doesn't have animations. When this method was used with Kokona, it was fully animated; it was all a matter of replacing the models and rewriting the dialogue, so I have to admit I was a bit confused.
    In summary: It's good. Not as good as I was expecting, but good. It's just lore at this point rather than gameplay.
    How would I improve it?: Definitely by making the stalker's house section more varied, perhaps more challenging, so that they can feel some sort of adrenaline. We are at a stranger's home, and someone who's potentially dangerous, so the gameplay should reflect that. Aside from that, the scheme feels too specific; multiple ways to reach the same end result would be much better for this kind of elimination method.
    --------------------------------------------------------------------
    Betray Osana
    This won't be long. It's the exact same method as Befriend, with only a minor change at the end. Simple summary: there's no real reason to choose one or the other, other than to feel more like a yandere I guess. Betraying Osana has no benefit and only downsides, since I think this method will have more of an impact in Senpai's sanity.
    How would I improve it?: There's multiple ways to do so. Because I explained previously how the scheme is so specific, I would consider making it less specific, and depending on how the player decides to help Osana, the game would automatically determine which cutscene would play out. The second option is to simply make Befriend have some sort of negative outcome; perhaps, simply Osana being the one to betray the player by confessing to Senpai anyway, making Betray the safer option but also the one that mostly affects Senpai.
    --------------------------------------------------------------------
    Expelling Osana
    The first part of my playthrough was spent testing out different hairstyles and accessories. Considering we already have all those models available I wonder why Ayano doesn't have some sort of character creation screen as this was probably the most fun I had in the entire game lol (don't blame me, I love creating characters).
    Later on I tried stealing Sakyu's ring as the scheme instructed. She saw me however, said "please don't touch that," then continued eating. Even though I had the ring, the game wouldn't let me put it inside Osana's bag. Also, restarting the day doesn't solve the issue as the scheme becomes unavailable.
    The problem I have with this is that at no point did the game tell me that this was some sort of "fail state," on the contrary, the scheme kept on going. Even if it did tell me, how is this little interaction an instant fail on the elimination method? Especially when the solution is nothing special: just stand closer to the wall and take the ring; you can't even send a student to distract the sisters, something that would make much more sense mechanically. This little scheme was strange.
    Next day, I had to place cigarettes on Osana's bag. Side note, I found it strange that the guidance counselor said possession of cigarettes is illegal, but that's just a nitpick. This scheme is a bit uneventful and there are ways to improve it but let's move on for now.
    Next day on the scheme asked me to "wait" until a certain time of day. And tell me, what kind of game would ask the player to "wait"? It can suggest you to wait until a certain time when doing the scheme is more convenient, but there's an issue when the only option available is do nothing.
    Next step was to steal the answer sheet and I failed this twice, having to go to the guidance counselor twice. The timing is way too tight here, becoming more frustrating than anything. Then, when I went to report Osana to the guidance counselor, she made no mention of how it was me the one that was trying to steal the answers. It would have been interesting if Ayano had to convince her through a series of answers/manipulation.
    In summary: This elimination method feels too specific for no reason. Osana's phone, realistically, could be stolen on the last day; instead, the game requires you to steal it on Monday.
    How would I improve it?: I still have serious issues with stealing Sakyu's ring; the way it's done feels more like an exploit or a glitch, not stealthy gameplay, so I would improve it in a way that the sisters have to go away before the ring can be stolen. As for placing cigarettes in Osana's bag, purchasing them from Info-chan is a bit boring. It would be much more interesting if the player was allowed to steal them from another student (say, Musume), then report Osana for both theft and smoking. With this in mind, the effectiveness of this method could be increased or decreased based on the player's actions, allowing for a more fluid gameplay instead of a binary outcome. Also, someone on this sub a while ago pointed out how it would be suspicious for Ayano to be reporting the same students for five days, and that instead it would be better if she could manipulate students into reporting Osana for her. I think this is a great idea and ties well with my previous suggestions: you could threaten Musume with reporting her to the guidance counselor for cigarettes, unless she reports Osana for the same. Finally, make all methods available at all times, and even add more, for more variety and less strict schemes.
    --------------------------------------------------------------------
    Burn Osana
    The only way to kill Raibaru is to get a mind-broken slave, send her to Raibaru, and stab her at the same time. Because the topic of torture is kind of a trigger (and eff movies that constantly show it), I simply made use of debug commands. Apparently, though, the game wasn't made to have a mind-broken slave on Monday, meaning that as soon as I attempted it, everything kind of broke apart at the same time. I couldn't attend class because "a murder was taking place," but Raibaru just froze in place, so I basically softlocked the game.
    A few attempts later I could do it… somewhat. The animations still didn't work but as long as the game recognized Raibaru as "dead" I was satisfied.
    Anyhow, the rest of the scheme proceeded as usual. The only problem I had with it is how the player has no way of knowing which path Osana will take to the showers (as I put the candle in the school plaza), but that can be avoided by just putting the candle in a more obvious place.
    In summary: This elimination method is decent enough. Raibaru is the only annoying thing about it.
    How would I improve it?: As I said this one is decent and even easy enough, but it doesn't require much stealth from the player. Perhaps, because this method is more brutal than stabbing Osana, it could have a much more negative effect on Senpai. With other rivals though I expect this method to be a bit more challenging/fun.
    --------------------------------------------------------------------
    Framing Osana for Murder
    This elimination method was actually more fun than the others. It allowed me to go into a killing spree without being caught and without having to dispose of corpses; after all, Osana was to be made responsible for them and Raibaru was not even an issue. I found it a bit annoying that the teachers could always see me trying to dispose of the bloody uniform, as there is no way to distract them or anything, and because of that this method took way too many attempts from me. However, it was fun enough; I think the game is at its most fun in this kind-of-sandbox state.
    In summary: Perhaps the best elimination method so far, even though it requires no interaction with Osana.
    How would I improve it?: As I've said, the amount of freedom it gives you is great. I think the player should not have so many instant game overs and instead be allowed to get through everything with enough skill. Just like with other methods though, more ways to get Osana's fingerprints would be good. More ways to remove your own fingerprints without the need of being in the drama club, and more ways even to make Osana look suspicious. It is kind of a plot hole how the police arrests her, seeing as she has an alibi (Raibaru) and both know it was Ayano the one who asked her to touch the box cutter. That might need more work.
    --------------------------------------------------------------------
    Rejecting Osana
    If the previous was the best elimination method, this one is easily the second-best. I think this is one example of a well-designed method, even though it needs tweaking. Personally, I've been relying on schemes this entire time, as a new player. However, in this particular case, schemes take away much of the fun with it.
    When I say this elimination method is well designed, it's because the player can get all the information they need right from the start. Osana speaks with Senpai right when the day begins, saying what they will do later, meaning the player can now use that information to their advantage.
    The problem I have is with certain days. For example, throwing Senpai's book inside the fountain is a simple enough solution. However, recording Osana's conversation with Musume with a directional mic then going into the computer lab to edit said conversation and save it into Osana's phone seems like way too convoluted for the player to guess without the use of the scheme.
    In summary: It's well designed and more elimination methods should follow this formula, but making it in a way that the player can do it without the need of a guide. This method also suffers from the same issue as expelling Osana in being too specific at times and not allowing a lot of choices.
    How would I improve it?: Changing Osana's interactions with Senpai completely. Sabotaging their events doesn't have to be easy, but I guess… realistic? Also, it might be a good idea to sabotage them in a way that reinforces a negative aspect of Osana. For example, her being a tsundere makes Musume's conversation kind of believable, but her having a girl's panty shot is a bit strange for her. Definitely the biggest change though is to remove or rework Info-chan's scheme in a way that makes the player think through more.
    --------------------------------------------------------------------
    A few other elimination methods
    Because the rest is more of the same, I just got them here in a little list.
    Crushing Osana: This one is pretty easy, just like the burn Osana scheme. There's not much skill required and it's easy to get away with murder using this method.
    Decapitating Osana: Decent again, although there's no way to cover up your crime. It seems there's finally a little use for the sanity meter, but because it's so easy to restore it, it kind of seems like a cosmetic effect in this case.
    --------------------------------------------------------------------
    Miscellaneous
    --------------------------------------------------------------------
    Final Thoughts on the Demo (Too Long, Didn't Read)
    As I said in my previous review, the demo needs a lot of work still. It clearly has something going for it, but gameplay-wise it needs more work.
    Mainly, the game is lacking in things to do. Waiting for something to happen is awful for any game, and the solutions are to include more content or rework how time works in the game. One of my suggestions is to include more side-quests and follow side-storylines. Again, Yandere Simulator has a lot of lore going for it, so why not take advantage of that? Each student's profile has a good amount of information and backstory about them, why not, instead of just doing a task for them, make the player follow a side story to gain certain advantages?
    Example: Sakyu Basu and Inkyu Basu are said to be demons. Simply make the player follow a storyline where they try to uncover their real identity, and if they beat it, they could gain a simple perk such as… being more respected with the Occult Club, a reputation increase, or any other stat increase. This system is a bit similar to Persona 5, and seeing that game is already an inspiration, it would be a good idea. Sure, that means more work ahead, but also it means the game could be more fun and interesting to play.
    That being said we should be aware of limitations. While this solution might be more fun, in the long run it'll take a lot of time to implement. Instead, reworking in-game time is perhaps the most sensible solution in this case. Knowing when to stop adding features is as important as knowing what to add, though that's a question that anyone in a development team has to ask themselves.
    A side note before moving on: The game clearly doesn't know what it wants to be, so even though some of my previous suggestions might work well in their respective methods, they might not work completely as a cohesive idea and need more brainstorming than just an afternoon. Example the matchmaking suggestion; YanSim is not a visual novel, so more stealthy/manipulative methods might be more effective for this type of game.
    As for what the game is at the moment, this might be a hard pill to swallow, but I think it's time to go back to the drawing board. The game isn't fun, it isn't terribly boring either but for the six years it took to get to this point it isn't anything impressive. Again the fact that this is "91% complete" is extremely worrying because a lot of its elements just don't work well together. So it might be a good idea to step back, think about what the game really needs, and work on that.
    The problem is that YandereDev clearly can't see that as a viable option and I can understand that. Hate and disappointment would be the words of the day and the game would lack support because of it.
    So instead, I'd say keep going with the crowdfunding campaign, but after a team is assembled, go back to the basics and start from scratch. Some of the current elements can be reused; as I said, the game does have something going for it, but trying to fix everything that went wrong would be much more expensive than just starting over, and I think that's the best solution at this point.
    It's nothing I see happening soon, but I am aware that a lot of people are trying to make their own Yandere Simulator games. Hopefully this overly-long review can help any of them.
    See you all around!
    submitted by Tagerii to Osana [link] [comments]

    Raven Reviews: IxSHE Tell Part 1, The Mechanics of a Book.

    TL;DR I review the novel without talking about the plot.
    A FRIENDLY DISAGREEMENT
    Recently I had a discussion with a stranger on a forum who was adamantly apposed to what he called "Harem Games" and novels that featured harem elements. To recount the whole conversation would take pages and wouldn't be entirely relevant to this review but i'd like to summarize two key points he expressed to me that informed his opinion. The first is that Japanese society, and even American society, is not supportive of a man having multiple partners. While I was able to get him to admit that recent years have seen a rise in polyamory in the United States he remained adamant that any form of harem was unrealistic for the culture. Secondly, he expressed an opinion that mechanically and from a game design perspective harem routs were a "copout" because they are very rarely the true route or most naturally feeling resolution to a story and only exist for people who quote "Feel bad for the girls they rejected even though most of the time that would be better for them and they're okay with it!" He would go on to say that Japanese views on romance are incompatible with harems because of their focus on "firsts" and "being someones only" but being someone who is not native Japanese myself and has only experienced their culture through works like the subject of this review I can't say I'm able to talk about that point much. I feel like VNs portray an idealized version of Japanese culture just like American media does and just like I wouldn't say someone who was seen every episode of any three american sitcoms knows American culture I would not say I know Japanese culture from reading VNs.
    Out of respect for his privacy I'm not going to name him here but if by some chance you're reading this stranger I spoke to this review will serve as my response to the summery of your points. While I know you're aware I disagree with you, I want to provide a better example then simply listing novels I though were good as I did in our original discussion. As I am well aware however that providing my response like this, if it were to miraculously reach you, is somewhat unfair since you have no good platform to respond with outside of a comment below please feel free to DM me and I will gladly respond. This review will be addressed to a wider audience obviously but I think it will be easy to tell what parts I have drawn from the information you gave me.
    "BEST HAIR" CHOICE STRUCTURE
    IxSHE Tell is a recently translated romantic comedy about P-kun (Ninomiya Hajime) and his difficult choice between five girls who confess to him one after the other. That plot synopsis may have drawn up some negative connotations for you but I encourage you to judge this story on its own merits because I was also skeptical but pleasantly surprised with the quality of the work presented. The novel is split in three parts. A lengthy prologue that takes somewhere between an hour and two hours to read. A common route of about fifteen hours, and then individual romance paths for each heroine that are about three hours long apiece. This clocks the total novel read time at about thirty hours but I would imagine a fast reader could finish it in twenty if they choose to. My personal time to completion is skewed slightly longer as I'm a masochist who wouldn't feel satisfied without being certain I've seen every possible line of dialog but I can't imagine this novel taking more the forty or forty five hours for the slowest reader. While their are a number of gimmicks in this novel I will discuss below without the H-patch the game makes the bold choice to provide the player with only a single meaningful choice and thereby creates a unique atmosphere I can't say I've ever experienced before.
    Anyone who has read more then one or two visual novels will know that commonly the narrative choices are less then open to a reader pursuing more then one heroine. I hesitate to say common structure punishes readers for choosing options favorable to more then one romance route but it certainly discourages it. To explain what I mean lets take a look at a few examples. Muv-Luv, specifically Muv-Luv Extra, has a difficult to unlock "Bad" ending where if the reader favors a specific heroine but fails to choose her options in one of a few specific scenes the game ends abruptly without satisfyingly concluding. Their is also a second "Bad" end which occurs only if the player makes two specific choices, both of which are little more then rejections of the branch path to romance routes. Effectively, failure to fully pursue one of the game's heroines results in the game ending in its second act, but paradoxically while the game has two dozen or so choices any combination of those options will result in a romance route and "good" end so long as the reader chooses the appropriate option at one of the deciding points. IMHHW by contrast has a failure route you can only trigger by selecting one specific option in one specific scene that is obviously the wrong choice and then locks you into a route shortly after. I actually think one of the most enjoyable jokes I can find in a VN is finding the path that lets you spend the least amount of time with a heroine but still puts you on her romance path, then watching as P-kun trips over himself to explain how he fell in love with her instead of the girl he spent most of the last week with. Unfortunately though I can rarely do this without failing out before the final act because of this exact type of choice structure.
    Some novels are more subtle about this lack of choice. Katawa Shoujo comes to mind as even at its worse you do have SOME free will to jump ship to a different heroine mid act but the binary choice between Lilly and Shizune never sat well with me and Emi being a one choice lock is just disappointing. While not every novel is blatant enough to go the Muv-Luv route and literally name the heroines in the choices so its impossible to miss who you're siding with its a rare treat to find a novel that doesn't spell out which options are the "right" ones to some degree. This brings me back to IxST because the design choice to make only one choice truly relevant, which I would call a weakness in any other novel, but replacing "Best Hair" choices with a gold star reward system opens the narrative and allows for a more natural and less pressured experience.
    REAL CHOICE
    This section might not be entirely 100% necessary but I wanted to break down exactly why I think the mechanics of this VN are so revolutionary and vastly superior to the rest of the genre. Honestly, while I know it wouldn't fit every novel I think future VNs would benefit greatly from this example. So the common route in IxST is divided into 5 subsections the novel labels as "days" but are probably better thought of as plot beats. Each subsection allows the reader to assign up to ten "hearts" in any combination to the five girls pursuing P-kun and with one major exception allows this to happen at any time. In the words of the games tutorial paraphrased, if a girl does something you like you can reward her with a heart. You're under no obligation to hand out hearts and can ignore the system all together if you choose but regardless at the end of each plot event you are prompted to select a girl for an extra scene and are then moved to the next plot beat with a new allotment of hearts. At the end of the last subsection if you overwhelmingly favored one girl with hearts over the others P-kun falls for that girl and you have the option to accept her confession. But even at this point you have the option to change your mind and pick another girl who will give you one final pitch about why you should choose them before giving you yet ANOTHER chance to back out and commit to the girl you favored.
    Maybe the weight of how much this changes the feel of reading a VN isn't clear so lets do a comparison. Muv-Luv Extra isn't a great novel, certainly not terrible but it's about as average as I could hope to find. Their is no other single VN to me that is as aggressively 5/10 as Muv-Luv Extra. Placing it beside IxST both games have a prologue introducing their respective flavors of P-kun and follow it with an intro movie. I know i'm vastly oversimplifying things as the prologues to these two stories are nothing alike but mechanically they have no difference so the important part is that when the common route starts the reader is mentally in the same place. In IxST the player is almost immediately presented with all the choice mechanic they will be interacting with for the next three or so hours of the novel in the form of the heart system. Muv-Luv by contrast spends its opening to the common route with one of the five heroins and less then half an hour into the experience presents the first choice which is a binary question of if you enjoyed yourself with her. Unless you are brand new to visual novels you will know immediately that Muv-Luv's choice should give you pause because without even letting you meet four of the five romance options you are already having to make a choice that you have no way of knowing the significance of. While not all novels do this it's not uncommon for a visual novel to soft lock out of a route when you don't get every choice for a heroine correct and so this small moment to a first time reader can feel needlessly stressful because choosing one option may lock you on one path for the narrative and the other may permanently lock you out of it without telling you either result for HOURS.
    In roughly the same time a reader will make their way through IxST's first section of common route to the extra scene choice that same reader in Muv-Luv will likely have to make two additional choices if not more all of which are binary "Best Hair" choices encouraging the reader to pursue one of the five heroines hours before the common route ends. This almost makes the choices irrelevant as the reader is primed to select whichever option continues the path their on and discourages them from picking the option they would prefer over the option that is more likely to result in a "good" end. Now to be fair IxST does not communicate to the reader that who they pick for the extra scene is not a soft lock but even if we assume the reader is ignoring the hearts and has already selected which romance route they want to shoot for the hearts system tutorial screen and the extra scene tutorial are definitely geared toward the opposite priming. Every girl is available to be chosen no mater how few hearts you gave her and this ties neatly into the games presentation. The cross view system that temporarily takes away the hearts counters and allows the reader to experience short scenes with each girl further primes the reader to the idea that no matter their choice at this stage the narrative will continue without soft locking. To summarize Muv-Luv and its traditional use of choices makes its narrative feel like the choices exist as a quiz of "what would this girl like me to do?" IxST and its heart system feel like you are organically favoring the girl or girls you enjoy and presents everyone with an equal chance for you to grow attached to them.
    THE PROBLEM WITH COMMON ROUTES
    I have another review in the works explaining why I dislike the presentation of most common routes using IMHHW as an example but I'll summarize my points here so I can explain how much better IxST is at getting a reader to seriously consider all the heroines as potential options then a traditional visual novel. Everyone knows their are certain types of characters that feature heavily in visual novels and to an extent has their preferences. Class Representatives, lolis, little sisters etc are all common starting points for heroines. I personally tend to dislike Tsunderes and have a preference for childhood friends but that's just me. Common routes ideally should follow four basic rules but often fail to uphold them.
    1.) The common route should introduce but NOT develop characters only important in one or two romance routes and should involve background characters as much as possible while developing the heroines.
    2.) The common route should develop each heroine equally and if possible should provide them with as close to equal screen time as feasible.
    3.) The common route should have a reason for existing outside of developing characters and this reason should not be resolved before the romance routes begin unless those routes have their own conflict.
    4.) The common route should have just as many CGs as the individual romance routes if not more and showcase each heroine evenly in them.
    I came up with these rules because the entire reason a common route exists is to allow the reader to familiarize themselves with the world and characters and specifically the heroines. If it fails to accomplish that then what was the point of having it? IMHHW happens to fail at ALL of these rules but that's a topic for another day. Let me know in the comments if you're interested in that review and I'll push it up the list. However before I explain why IxST does so well by following these guidelines let me explain my reasoning for each.
    Rule one recognizes that visual novels need characters other then the protagonist and heroines to feel believable, otherwise the world feels empty and flat. These characters come in three flavors. Background, Side, and Spriteless. Background characters are things like the protagonists best friend or their teacher, definitely important people with a role in the narrative but not romance options. Ideally background characters should be introduced in the prologue to establish their personality and due to their development typically remaining static involved as much as possible with the character in the common route so that by the time the romance routes are reached they can serve their narrative purpose without taking away from the heroine. We should know everything important about them before the half way mark so they can be used and referenced easily as needed. A perfect example is Mikoto in Muv-Luv Extra, who is introduced about a quarter of the way through the game and has basically finished his development by the half way point. Side characters are the opposite, and should be developed in romance routes after being introduced in the common route. A good example here is if a heroine has a little sister, although not every little sister character is like this in general this example works. Ideally, the reader should know the heroine has a little sister and be introduced to her sprite but this is only to allow her to be expanded on in the romance route later so that each run of the game feels unique. Just like in real life growing closer to people means your circle of friends shifts and its more interesting to a reader to have to work to know every character in the game then to always have that information from the beginning. The last category of Spriteless are small time or single use characters that well, don't have a sprite. I might come back in a future review and talk about this group but they don't bear much relevance to the current topic so I'm going to move on.
    The second rule is pretty self explanatory but to be thorough one of the greatest sins a common route can commit is focusing on one character over the others. Yes, I am aware that some novels have "true" ends that are meant to advance a larger story. Yes, I am also aware that in real life it is very unlikely people you only see at school or work or whatever will have an equal amount of exposure to you as people you've been friends with for years or who you have class with. None of those things matter in a novel. The author has the ability to portray each character evenly even if the protagonist does not have an even amount of interaction with each character. The thing about real life and realism is that life is often incredibly boring. I have yet to see a novel that forced me to sit through every class period the protagonist experienced, because that would be excruciating. I also don't have to wait six hours for the protagonist to wake up after going to sleep nor witness every bite of breakfast every day. This isn't a question of what is realistic this is a question of allowing the reader to get a decent understanding of the characters. This doesn't always mean they are given literally to the second the same amount of dialogue and screen time, but a good common route will let each heroine have an equal time to shine without favoring any of them.
    The third rule is the one I most often see broken and as such has become my personal most important of the four. I am far more willing to forgive a novel that can follow this rule, even if it isn't for every run, then i am a novel that can not. I have no problems with slice of life narratives. It can sometimes be incredibly cathartic to just drop into the shoes of someone else and pretend to be them for a day. But stories do not exist without conflict and no, choosing which girl you like is not sufficient conflict for the story unless the protagonist is just as concerned about it as you are. Ideally, a novel's conflict should involve all the characters though that's rather difficult so settling for just the protagonist and heroins is fine. The conflict should also have enough leeway to be solved in multiple ways so that each heroines route can provide their own solution. How a heroine uniquely resolves conflict or avoids it is a huge opportunity to squander by ignoring the inclusion of a story.
    The fourth rule is most concerned with creating a balanced feeling to the novel and has less to do with the common route specifically then it does with the novel as a whole but I tend to include it here because well, it just makes since. Obviously the romance routes are going to have a higher density of CGs then the common route. If you include extra scenes and optional scenes as part of a heroine's run rather then common route content that rule is doubly true. However this doesn't mean that the common route is totally devoid of CGs because that is obviously not the case. Most VNs use the prologue as an excuse to give each heroine an opening CG but the common route is where the majority of group shots and for lack of a better term "casual" scenes allow the artists to showcase each heroine outside of their static sprites. If you've read the other rules explanations you may have noticed that I haven't elaborated on the notion that the common route's main goal is to make the heroine's interesting to the reader and I've saved that point for this moment because outside of their sprites, which are a vital part of a heroine's ability to express themselves, CGs are the most important facet to letting these characters "breath." If you've ever listened to the dialogue in a visual novel without looking at the screen (Admittedly you'd have to know at least a bit of Japanese to do this but lets just assume you have the bare minimum understanding of what the characters are saying.) its actually really hard to distinguish each heroine's personality purely off the words they say. Maybe we don't often think about it but this genre is not just tied to its visual element it is at this point utterly undivorcable from it because it has come to rely on tropes and ideas that repeat themselves so often they tend to blur. How many visual novels have heroines that are constantly getting "shy" or "flustered?" How many use the same literal words like Segoi, Baka, Hentii, to describe things? Language is both endlessly expressive and limiting and even the best VNs, perhaps ESPECIALLY the best, would make TERRIBLE novels if they were printed as is in the form of a paperback. The entire reason for CGs even existing is to play off established tropes and the story to give the reader a snapshot of why the moment they are currently reading is significant and unique, and in a romance novel that more often then not translates to why the heroine is significant and unique. Neglecting this visual element therefore is a huge disservice to the the reader.
    MERGING THE IDEAS
    Having said all that IxST uses its unique choice system to facilitate a change in the reader's approach to reading and thus makes itself vastly more enjoyable. This novel could have so easily been nothing more then a self insert fantasy about being pursued by multiple women but because it encourages you to engage with every line of dialogue and spread your focus between all of the characters the story feels fresh and different. The last major choice mechanic I have to mention in IxST, the cross view system, is the epitome of this because while I do have problems with some of the scenes I'll talk about in part 2 of this review the fact it's the only time you can't access the hearts menu was a stroke of genius.
    Cross view occurrences are once per subsection of the common route and present you with six to nine short scenes involving characters not in P-kun's immediate vicinity talking about or thinking about him. Their is always one scene for each of the heroines but most of the background characters get one each go around as well as usually a scene from the perspective of a random nameless classmate. These scenes are 100% optional but choosing not to read them is a real disservice because letting yourself get into the mindset of the heroins and characters really fleshes out their actions and puts context to the events that happen toward the end of each subsection. I think you'd really miss out if you skipped them. What elevates them for me though is the fact that since you can't access the hearts menu you're forced to think about the scenes for a longer period of time before immediately rewarding the heroines with a heart. By the time you get the menu back you may feel compelled to hand out two or three of your ten points and that choice is a really good moment to sit and consider how you actually feel about each of the characters. If you haven't been interested in one of the girls but their inner thoughts persuaded you they mean well or vise versa then these moments of returned choice can really shake up who you favor for the eventual act three. It feels like i'm praising this game for taking away my options during these sections, because I am, but that's only because you have such freedom everywhere else you become hyper aware and observant when it's scaled back.
    Going back to the common route rules above this altered mindset falls perfectly in line with fulfilling those goals. Because the reader also cross views background characters to get their perspective they get to relegate development in the main story away from interactions with the protagonist and still fulfill the requirement they be showcased. Because each heroine always has a cross fade section each of them gets a roughly equal amount of time to win over a reader and because they have this extra time they can have more interesting personal conflicts that carry over to their romance routes while the main plot focuses on P-kun's struggles.
    A RESPONSE TO A DIFFERENT POINT
    I want to wrap up this first part of my review by addressing why I think "harem" games are uniquely suited to have better, more developed experiences then equal surface quality novels. IxST would not have worked as a story if the protagonist had been the one to confess to the heroines. I don't mean it would have just been different I mean the structure of this game and what made it so interesting and special would have been worthless if that one detail were changed. The choice system of IxST only works because all options are treated equally and never pull the reader too far in one direction. The mindset of someone who is balancing a relationship with five people is fundamentally different from pursuing one out of five. I can't make it any clearer then that, reading this VN is just fundamentally different because the atmosphere is different.
    Am I saying ALL harem games are like this? Absolutely not. Especially those that have the harem route as an option but clearly do not focus on it or worse work like Harem Party where harem means nothing more then the Echii scenes keep changing girls. But I am saying its easier to break out of the mindset visual novels often fall into where you can only pursue one girl at a time and regardless of what the context of the situation is you should always pick the option that girl will like or be punished for it. The quote that really stuck with me from my conversation referenced in the intro above was "I can never get invested in the characters because they treat everyone the same."
    I didn't say it at the time but isn't that a good thing? Do you WANT the characters to be inherently unequal? Everyone has their kinks and this is a kinky kinky genre you're allowed to pick favorites based upon what you like but doesn't it stand to reason that if you're reading a novel and one character is favored over another that the person who likes that unfavored character is going to wish they had been treated more equally? That's to say nothing about the fact that every novel is someones first and if a brand new VN reader gets hold of this story don't you want them to have a fair representation of the different character types? Isn't the entire point of having options to be able to explore them unbiased? If you really wanted to pursue just one type of character then their are dozens of novels with only one heroine, admittedly far less then their are with several choices but it's not like they don't exist! Now if the novel is poorly written and the characters have to all share two or three personality traits then yeah fine you have a point there but that's not the harems fault that's just a bad novel in general.
    I can't say I'm a "fan" of harem VNs, I think I own maybe five total that could even plausibly count out of a sizable collection but I can't deny that problems I constantly complain about in other VNs are at worse absent in the sub-genre and at worst have active solutions like in IxST that I feel NEED to be praised. I don't feel comfortable writing off these stories because "One man can't possibly satisfy five girls." His words not mine.
    WHY I CHOOSE TO SPLIT THIS REVIEW
    Well for starters i'm already going far over what I think is reasonable for a single post and haven't even TOUCHED on the actual game's story but more importantly I think my opinion on the VN itself and the mechanics of the game are two separate things. I'll be clear and say I do like IxST, in fact it might crack my top 15, but I have a lot more to say about its narrative then I do about this topic so I decided it would be best to segregate the two ideas. Next week I'll be posting my views on the story, characters, music, art, and my overall opinion with a few extras thrown in. I expect it will end up being even longer then part 1 so be prepared for that I guess. I'm interested to see which of these two parts do better overall so if you liked what you read consider showing some support. I'll consider your updoot to be a substitute for a heart. This is my fourth review in this series so I'm still full of ideas but if these longer reviews do well I might consider moving to a slower release schedule to be sure I can be more detailed. Let me know what you think and if you agree with my points or the stranger I argued against. Stay well everyone!
    submitted by OneSilverRaven to visualnovels [link] [comments]

    An introduction to Linux through Windows Subsystem for Linux

    I'm working as an Undergraduate Learning Assistant and wrote this guide to help out students who were in the same boat I was in when I first took my university's intro to computer science course. It provides an overview of how to get started using Linux, guides you through setting up Windows Subsystem for Linux to run smoothly on Windows 10, and provides a very basic introduction to Linux. Students seemed to dig it, so I figured it'd help some people in here as well. I've never posted here before, so apologies if I'm unknowingly violating subreddit rules.

    Getting Windows Subsystem for Linux running smoothly on Windows 10

    GitHub Pages link

    Introduction and motivation

    tl;dr skip to next section
    So you're thinking of installing a Linux distribution, and are unsure where to start. Or you're an unfortunate soul using Windows 10 in CPSC 201. Either way, this guide is for you. In this section I'll give a very basic intro to some of options you've got at your disposal, and explain why I chose Windows Subsystem for Linux among them. All of these have plenty of documentation online so Google if in doubt.

    Setting up WSL

    So if you've read this far I've convinced you to use WSL. Let's get started with setting it up. The very basics are outlined in Microsoft's guide here, I'll be covering what they talk about and diving into some other stuff.

    1. Installing WSL

    Press the Windows key (henceforth Winkey) and type in PowerShell. Right-click the icon and select run as administrator. Next, paste in this command:
    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 
    Now you'll want to perform a hard shutdown on your computer. This can become unecessarily complicated because of Window's fast startup feature, but here we go. First try pressing the Winkey, clicking on the power icon, and selecting Shut Down while holding down the shift key. Let go of the shift key and the mouse, and let it shutdown. Great! Now open up Command Prompt and type in
    wsl --help 
    If you get a large text output, WSL has been successfully enabled on your machine. If nothing happens, your computer failed at performing a hard shutdown, in which case you can try the age-old technique of just holding down your computer's power button until the computer turns itself off. Make sure you don't have any unsaved documents open when you do this.

    2. Installing Ubuntu

    Great! Now that you've got WSL installed, let's download a Linux distro. Press the Winkey and type in Microsoft Store. Now use the store's search icon and type in Ubuntu. Ubuntu is a Debian-based Linux distribution, and seems to have the best integration with WSL, so that's what we'll be going for. If you want to be quirky, here are some other options. Once you type in Ubuntu three options should pop up: Ubuntu, Ubuntu 20.04 LTS, and Ubuntu 18.04 LTS.
    ![Windows Store](https://theshepord.github.io/intro-to-WSL/docs/images/winstore.png) Installing plain-old "Ubuntu" will mean the app updates whenever a new major Ubuntu distribution is released. The current version (as of 09/02/2020) is Ubuntu 20.04.1 LTS. The other two are older distributions of Ubuntu. For most use-cases, i.e. unless you're running some software that will break when upgrading, you'll want to pick the regular Ubuntu option. That's what I did.
    Once that's done installing, again hit Winkey and open up Ubuntu. A console window should open up, asking you to wait a minute or two for files to de-compress and be stored on your PC. All future launches should take less than a second. It'll then prompt you to create a username and password. I'd recommend sticking to whatever your Windows username and password is so that you don't have to juggle around two different usepassword combinations, but up to you.
    Finally, to upgrade all your packages, type in
    sudo apt-get update 
    And then
    sudo apt-get upgrade 
    apt-get is the Ubuntu package manager, this is what you'll be using to install additional programs on WSL.

    3. Making things nice and crispy: an introduction to UNIX-based filesystems

    tl;dr skip to the next section
    The two above steps are technically all you need for running WSL on your system. However, you may notice that whenever you open up the Ubuntu app your current folder seems to be completely random. If you type in pwd (for Present Working Directory, 'directory' is synonymous with 'folder') inside Ubuntu and hit enter, you'll likely get some output akin to /home/. Where is this folder? Is it my home folder? Type in ls (for LiSt) to see what files are in this folder. Probably you won't get any output, because surprise surprise this folder is not your Windows home folder and is in fact empty (okay it's actually not empty, which we'll see in a bit. If you type in ls -a, a for All, you'll see other files but notice they have a period in front of them, which tells bash that they should be hidden by default. Anyways).
    So where is my Windows home folder? Is WSL completely separate from Windows? Nope! This is Windows Subsystem for Linux after all. Notice how, when you typed pwd earlier, the address you got was /home/. Notice that forward-slash right before home. That forward-slash indicates the root directory (not to be confused with the /root directory), which is the directory at the top of the directory hierarchy and contains all other directories in your system. So if we type ls /, you'll see what are the top-most directories in your system. Okay, great. They have a bunch of seemingly random names. Except, shocker, they aren't random. I've provided a quick run-down in Appendix A.
    For now, though, we'll focus on /mnt, which stands for mount. This is where your C drive, which contains all your Windows stuff, is mounted. So if you type ls /mnt/c, you'll begin to notice some familiar folders. Type in ls /mnt/c/Users, and voilà, there's your Windows home folder. Remember this filepath, /mnt/c/Users/. When we open up Ubuntu, we don't want it tossing us in this random /home/ directory, we want our Windows home folder. Let's change that!

    4. Changing your default home folder

    Type in sudo vim /etc/passwd. You'll likely be prompted for your Ubuntu's password. sudo is a command that gives you root privileges in bash (akin to Windows's right-click then selecting 'Run as administrator'). vim is a command-line text-editing tool, kinda like an even crummier Notepad, which is a pain to use at first but bear with me and we can pull through. /etc/passwd is a plaintext file that does not store passwords, as the name would suggest, but rather stores essential user info used every time you open up WSL.
    Anyway, once you've typed that in, your shell should look something like this: ![vim /etc/passwd](https://theshepord.github.io/intro-to-WSL/docs/images/vim-etc-passwd.png)
    Using arrow-keys, find the entry that begins with your Ubuntu username. It should be towards the bottom of the file. In my case, the line looks like
    theshep:x:1000:1000:,,,:/home/pizzatron3000:/bin/bash 
    See that cringy, crummy /home/pizzatron3000? Not only do I regret that username to this day, it's also not where we want our home directory. Let's change that! Press i to initiate vim's -- INSERT -- mode. Use arrow-keys to navigate to that section, and delete /home/ by holding down backspace. Remember that filepath I asked you to remember? /mnt/c/Users/. Type that in. For me, the line now looks like
    theshep:x:1000:1000:,,,:/mnt/c/Users/lucas:/bin/bash 
    Next, press esc to exit insert mode, then type in the following:
    :wq 
    The : tells vim you're inputting a command, w means write, and q means quit. If you've screwed up any of the above sections, you can also type in :q! to exit vim without saving the file. Just remember to exit insert mode by pressing esc before inputting commands, else you'll instead be writing to the file.
    Great! If you now open up a new terminal and type in pwd, you should be in your Window's home folder! However, things seem to be lacking their usual color...

    5. Importing your configuration files into the new home directory

    Your home folder contains all your Ubuntu and bash configuration files. However, since we just changed the home folder to your Window's home folder, we've lost these configuration files. Let's bring them back! These configuration files are hidden inside /home/, and they all start with a . in front of the filename. So let's copy them over into your new home directory! Type in the following:
    cp -r /home//* ~ 
    cp stands for CoPy, -r stands for recursive (i.e. descend into directories), the * is a Kleene Star and means "grab everything that's here", and the ~ is a quick way of writing your home directory's filepath (which would be /mnt/c/Users/) without having to type all that in again. Once you've run this, all your configuration files should now be present in your new home directory. Configuration files like .bashrc, .profile, and .bash_profile essentially provides commands that are run whenever you open a new shell. So now, if you open a new shell, everything should be working normally. Amazing. We're done!

    6. Tips & tricks

    Here are two handy commands you can add to your .profile file. Run vim ~/.profile, then, type these in at the top of the .profile file, one per line, using the commands we discussed previously (i to enter insert mode, esc to exit insert mode, :wq to save and quit).
    alias rm='rm -i' makes it so that the rm command will always ask for confirmation when you're deleting a file. rm, for ReMove, is like a Windows delete except literally permanent and you will lose that data for good, so it's nice to have this extra safeguard. You can type rm -f to bypass. Linux can be super powerful, but with great power comes great responsibility. NEVER NEVER NEVER type in rm -rf /, this is saying 'delete literally everything and don't ask for confirmation', your computer will die. You've been warned. Be careful.
    export DISPLAY=:0 if you install XLaunch VcXsrv, this line allows you to open graphical interfaces through Ubuntu. The export sets the environment variable DISPLAY, and the :0 tells Ubuntu that it should use the localhost display.

    Appendix A: overview of top-level UNIX directories

    tl;dr only mess with /mnt, /home, and maybe maybe /usr. Don't touch anything else.
    • bin: binaries, contains Ubuntu binary (aka executable) files that are used in bash. Here you'll find the binaries that execute commands like ls and pwd. Similar to /usbin, but bin gets loaded earlier in the booting process so it contains the most important commands.
    • boot: contains information for operating system booting. Empty in WSL, because WSL isn't an operating system.
    • dev: devices, contains information for Ubuntu to communicate with I/O devices. One useful file here is /dev/null, which is basically an information black hole that automatically deletes any data you pass it.
    • etc: no idea why it's called etc, but it contains system-wide configuration files
    • home: equivalent to Window's C:/Users folder, contains home folders for the different users. In an Ubuntu system, under /home/ you'd find the Documents folder, Downloads folder, etc.
    • lib: libraries used by the system
    • lib64 64-bit libraries used by the system
    • mnt: mount, where your drives are located
    • opt: third-party applications that don't have any dependencies outside the scope of their own package
    • proc: process information, contains details about your Linux system, kind of like Windows's C:/Windows folder
    • run: directory for programs to store runtime information. Similarly to /bin vs /usbin, run has the same function as /varun, but gets loaded sooner in the boot process.
    • srv: server folder, holds data to be served in protocols like ftp, www, cvs, and others
    • sys: system, used by the Linux kernel to set or obtain information about the host system
    • tmp: temporary, runtime files that are cleared out after every reboot. Kinda like RAM in that way.
    • usr: contains additional UNIX commands, header files for compiling C programs, among other things. Most of everything you install using apt-get ends up here.
    • var: variable, contains variable data such as logs, databases, e-mail etc, but that persist across different boots.

    Appendix B: random resources

    submitted by HeavenBuilder to learnprogramming [link] [comments]

    List of New Supported Games and FAQ.

    Hey guys! Here is a list of all the new supported games, you can download the Nucleus Co-Op scripts from the app now, the games listed here that are clickable link you to a guide but all are supported. You can also see all available scripts from the app now by pressing the view all option.
    10 Miles to Safety
    20XX
    100% Orange Juice
    200% Mixed Juice!
    Abyssal Zone
    Acceleration of SUGURI 2
    Accel World VS. Sword Art Online Deluxe Edition
    A Hat in Time
    Air Missions: HIND
    Alien Breed Impact
    Alien Breed 2: Assault
    Alien Breed 3: Descent
    Aliens Colonial Marines
    Aliens vs Predator
    Alien Swarm: Reactive Drop
    Among Us
    Aragami: Shadow Edition
    ARK: Survival Evolved
    Ashen (steam version only)
    Astroneer
    Attack on Titan 2
    ATV Drift & Tricks
    Barony
    Battle Grounds III
    Binary Domain
    BioShock 2
    Bit Dungeon III
    Blades of Time
    Bladestorm: Nightmare
    Blood and Bacon
    Bob Was Hungry
    Borderlands
    Borderlands 2
    Borderlands: The Pre-Sequel
    Borderlands GOTY Enhanced
    Borderlands 3
    BrainBread 2
    Broomstick League
    Brütal Legend
    Bulletstorm: Full Clip Edition
    Bunch of Heroes
    Call of Duty: Black Ops II
    CastleMiner Z
    Clandestine
    Cladun Returns: This is Segoku
    Chivalry: Medieval Warfare
    Citadel: Forged With Fire
    Code of Princess
    Conan Exiles (16 june 2020 update added Funcom Live Services and now the game is online only effectively breaking the splitscreen script. You need to downgrade to the previous version.)
    Contagion
    Contra: Rogue Corps
    Counter-Strike: Source
    Craftopia
    Cube World
    Cyberdimension Neptunia: 4 Goddesses Online
    Daemon X Machina
    Damnation
    Dark Souls: Prepare to Die Edition
    Day of Defeat: Source
    Day of Infamy
    Deadfall Adventures
    Dead Island
    Dead Island: DE
    Dead Island Riptide: DE
    Dead Rising 2
    Dead Rising 2: Off the Record
    Dead Rising 3
    Dead Rising 4
    Deathtrap
    Debris
    Deep Rock Galactic
    Desolate
    Dinosaur Hunt
    Divinity: Dragon Commander
    Divinity: Original Sin Enhanced Edition
    Divinity: Original Sin 2
    Don't Starve Together
    Door Kickers
    Double Action: Boogaloo
    Dragon Ball Xenoverse
    Dragon Ball: Xenoverse 2
    Dragon Marked for Death
    Dragon Quest Builders 2
    Drake Hollow
    Dungeon of the Endless
    Dungeons 3
    Dungeon Siege III
    Dying Light
    Dystopia
    Earth Defense Force 4.1
    Earth Defense Force 5
    Earth Defense Force: Insect Armageddon
    Earth Defense Force: Iron Rain
    Earthfall
    Enemy Front
    E.T. Armies
    F1 2012
    F1 2014
    Fade to Silence
    Factorio
    Fallout 76
    F.E.A.R. 3
    Final Exam
    Feel The Snow
    Fight The Dragon
    Fistful of Frags
    Forge Quest
    Fortified
    Front Mission Evolved
    Full Mojo Rampage
    Garry's Mod
    Gas Guzzlers Extreme
    Generation Zero
    Gensokyo Defenders
    GOCCO OF WAR
    God Eater Resurrection
    God Eater 2 - Rage Burst
    God Eater 3
    God Mode
    Golf It!
    Grid 2
    Grim Dawn
    Ground Branch
    GTFO
    Guns n Zombies
    Half-Life Deathmatch: Source
    Half-Life 2: Deathmatch
    Half-Minute Hero: The Second
    Halo Custom Edition
    Halo 2 LAN
    Halo 2: Project Cartographer
    Halo Online ElDewrito
    Halo: The Master Chief Collection
    Halo Wars: Definitive Edition
    Hammerwatch
    Hero Siege
    Hoard
    Hunted: The Demon’s Forge
    Human: Fall Flat
    I am Weapon: Revival
    Insurgency
    Iron Brigade
    It came from space, and ate our brains
    Kane & Lynch 2: Dog Days
    KATANA KAMI: A Way of the Samurai Story
    Killing Floor
    Killing Floor 2
    Killsquad
    Kill to Collect
    Lead and Gold: Gangs of the Wild West
    Left 4 Dead 2
    LEGO Worlds
    Livelock
    Lord of the Rings War in the North
    Lost Planet 3
    Magicite
    McDroid
    Mean Greens - Plastic Warfare
    Mighty No. 9
    Minecraft Java Edition
    Monday Night Combat
    Mordheim: City of the Damned
    Morphies Law
    Mothergunship
    MudRunner
    NanoWars
    NASCAR '15 Victory Edition
    Necropolis
    Need For Speed Most Wanted 2005
    Nioh: Complete Edition
    Niffelheim
    No Man's Sky
    No More Room in Hell
    Outbreak
    Outbreak: TNN
    Outland
    Outward
    Orcs Must Die! 2
    ORION: Prelude
    OVERKILL's The Walking Dead
    Pacify
    Paint the Town Red
    PAYDAY: The Heist
    PAYDAY 2
    Pirates, Vikings, and Knights II
    PixARK
    PixelJunk Nom Nom Galaxy
    Portal Knights
    Prevent The Fall
    Primal Carnage: Extinction
    Project CARS 2
    Pure
    Raft
    Rage
    Re:Legend
    Remnant: From the Ashes
    Resident Evil 5
    Resident Evil 6
    Resident Evil Revelations
    Re-Volt (RVGL)
    RimWorld
    Risk of Rain 2
    Roguelands
    Ryse: Son of Rome
    Sacred 3
    Saints Row The Third
    Saints Row IV
    Saints Row: Gat out of Hell
    Sanctum
    Sanctum 2
    Scourge Outbreak
    Secrets of Grindea
    Senran Kagura: Shinovi Versus
    Senran Kagura: Estival Versus
    Senran Kagura: Peach Beach Splash
    Serious Sam 2
    Seven Days to Die
    Sir, You Are Being Hunted
    SkyDrift
    Sniper Elite 3
    Space Engineers
    Space Hulk: Deathwing
    Spec Ops: The Line
    Spintires
    Starbound
    Stardew Valley
    Star Wars: Battlefront 2 (Classic, 2005)
    Strange Brigade
    Strength of the Sword: ULTIMATE
    Styx: Shards of Darkness
    Super Mario 64
    Super Mario 64 PC Port
    Survivalist
    Sven Coop
    Sword Art Online Re: Hollow Fragment
    Sword Art Online: Lost Song
    Sword Art Online: Hollow Realization Deluxe Edition
    Synergy
    SYNTHETIK: Arena
    SYNTHETIK: Legion Rising
    Takedown: Red Sabre
    Team Fortress 2
    Teenage Mutant Ninja Turtles: Mutants in Manhattan
    Teenage Mutant Ninja Turtles: Out of the Shadows
    Terraria
    TerraTech
    The Blackout Club
    The Darkness 2
    The Forest
    The Haunted: Hells Reach
    theHunter: Call of the Wild
    The Incredible Adventures of Van Helsing
    The Incredible Adventures of Van Helsing II
    The Incredible Adventures of Van Helsing III
    The Incredible Adventures of Van Helsing Final Cut
    The Mean Greens - Plastic Warfare
    The Simple Apocalypse
    The Survivalists
    The Watchers
    Tokyo Ghoul:re Call to Exist
    Tom Clancy's Rainbow Six: Vegas 2
    Tomb Raider
    Torchlight II
    Toukiden: Kiwami
    Toukiden 2
    TOXIKK
    Unending Dusk
    Unepic
    Unloved
    Unreal Tournament III
    Umbrella Corps
    Vagante
    Warcraft III: The Frozen Throne
    Warcraft III: Reign of Chaos
    Warhammer 40,000: Space Marine
    We Were Here Together
    White Noise 2
    World in Conflict: Complete Edition
    Wreckfest
    XCOM: Enemy Within
    Zeno Clash II
    Zombie Army Trilogy
    Zombie Panic! Source

    Frequently Asked Questions & Troubleshooting

    (Under Construction, last updated: 11/08/20)
    Q: What is Nucleus Co-Op?
    A: https://www.youtube.com/watch?v=jbituCgu3Bc
    Nucleus Co-Op is a free and open source tool for Windows that allows split-screen play on many games that do not initially support it. The app was originally created by Lucas Assis. Zerofox later took over and added a ton of new features and improvements to support a lot more games. Ilyaki later joined in and brought multiple keyboards/mice support and more great features to the table. The app is currently being developed and updated by these devs: Lucas Assis, Zerofox and Ilyaki.
    R-mach too for making and supporting the website that hosts the Nucleus Co-Op scripts.
    Also the further development of the app wouldn't have been possible without all the amazing contributions and hard work from the SplitScreen Dreams Discord members (which include the devs mentioned above) that made all the new Nucleus Co-Op scripts and continue to make new discoveries and scripts to support even more games, among them: Talos91, PoundlandBacon, dr. old.boi, Pizzo and many more.
    Q: How does Nucleus Co-Op work?
    A: Essentially Nucleus Co-Op opens multiple instances of the same game (some games require mutex killing for that, among other methods) that will only answer to one specific gamepad (we do this via Nucleus Co-Op custom xinput dlls or xinput plus dlls) and connects those instances via LAN or steamworks online multiplayer emulation (Goldberg Emulator), all while making sure all the windows have focus so they can be playable with gamepads or that the instances are playable even in the background. Nucleus then resizes, removes borders and repositions the games windows so you can have synthetic splitscreen to play locally with your friends.
    Q: Which games can be splitscreened using Nucleus Co-Op?
    A: There are a lot of supported games, all mentioned in the list above. A ton of games are now supported thanks to the amazing program called Goldberg Emulator, developed by Mr. Goldberg, a big thank you to him. Read the Goldberg FAQ if you want to know more.
    Q: Where do I download Nucleus Co-Op?
    A: You can download latest version from Github. Download the compiled .rar release, don't download the source code zip if you just want to use the app. Zerofox's mod v0.9.9.9 r4 is the latest version recent scripts are created for, please avoid other versions for now.
    Q: How do I use Nucleus Co-Op?
    A: Here is a quick video tutorial: https://www.youtube.com/watch?v=hWmvz59i-o0
    1.- Download and exctract Nucleus Co-Op (extract using apps like 7-zip or winrar).
    2.- Open NucleusCoop.exe.
    3.- Click on Download Game Scripts, the script browser will open. Search for a game in the supported games list and download a script. You can also see all available scripts from the app now by pressing the view all option.
    4.- Once the script has finished downloading you will get a prompt asking if you would like to add a game now, click yes if you want to add it now, if you select no proceed to step 6.
    5.- Next you need to find where your game's executable is located. If you're not sure, try Googling 'where is (game) installed' and just search for the .exe in the place they tell you to look for. For Steam games this is usually something along the lines of 'C:\Program Files\Steam\steamapps\common(game)'. Some games will have their real .exe stashed away in a folder called 'bin' or 'binaries'. Once you choose the right .exe, add the game.
    6.- You can also automatically add games, click 'Auto-Search' and select the drive and path you want to add games from.
    7.- Once your game is added, select it in the Nucleus UI and drag the gamepad icons to the splitscreen layout, click on the top-left icon on the layout corner to change the type of splitscreen layout. You can also use multiple monitors, if you have multiple monitors connected they will show in the Nucleus UI. If you see Script Author's Notes appear at the bottom of the UI, read them carefully.
    8.- Finally press > then Play (top right of the UI) and you are ready to go.
    Q: Where should I place the Nucleus Co-Op folder?
    A: You can place the folder wherever you like as long as you keep the following in mind:
    DO NOT place it inside a folder containing files for a game you wish to play.
    Avoid placing it inside a folder that has security settings applied to is, such as program files, program files (x86).
    Some scripts require the Nucleus Co-Op folder to be located on the same drive as the game files.
    If you are still unsure where to place the folder, the root of the drive your games are installed on is usually a safe option.
    Q: How do I play with an uneven amount of players (such as 3 players) without having an empty space?
    A: Right click on a section of the splitscreen layout.
    Q: Nucleus Co-Op doesn't launch, how do I fix it?
    A: Here are a few things you can try:
    1.- Try updating your Microsoft.net framework, and install/reinstall Visual C++ 2010-2017.
    2.- Make sure your antivirus program is not blocking Nucleus Co-Op or deleting any of its files.
    3.- Run Nucleus Co-Op as admin.
    4.- Restart your PC, and try again.
    Q: Does Nucleus Co-Op have any malware?
    A: Absolutely not.
    Q: I wish to help out with the project, how can I get in touch?
    A: Join the Nucleus Co-Op discord community or contact us here in the subreddit.
    Q: When support for X game?
    A: Not all games are easy to splitscreen, if you want to suggest a game make a post with the title [Request] Name of the game and provide useful information like if the game supports LAN or dedicated servers, if it is available on Steam or in other services, if it uses external servers for online, if it has gamepad support etc. Also you can contact any of our experienced Nucleus scripters here or in the Nucleus Co-Op discord and ask if a script is possible. The main scripter is the OP of this post for instance. Remember that Scripters are limited by the games they own and can test on, so if you really want support for a game to be added consider donating the game to the scripter in question.
    Q: How do I know when a script gets updated?
    A: Scripts updates are always announced in the Nucleus Co-Op discord server in the channel scripts updates.
    Q: How do I create my own splitscreen script for Nucleus Co-Op?
    A: Here is the documentation, open the .js file with notepad to read it. You can also use the other scripts you download from Nucleus as reference, they get downloaded to the Nucleus scripts folder. If you create a working script or if you have any questions about Nucleus scripting you can ask us in the Nucleus Co-Op discord or here in the subreddit, we can help you improve your script so it is fully working for sharing with the community.
    Q: Does Nucleus Co-Op work on Linux/Mac?
    A: Nucleus Co-Op depends on a lot of Windows functions and APIs, at the moment it only works on Windows 7 and Up. If you are interested in porting Nucleus Co-Op to other operating systems please feel free to contact any of the developers.
    Q: Where can I report a bug/issue?
    A: Note that Nucleus Co-Op is a tool in development and still in Alpha. Expect bugs, glitches and weird things to happen. Help other people not have these things happen by checking for a solution here and submitting a [BUG REPORT] to the reddit as a new topic or in the comments here, if no-one else has brought it up. Make sure you have read the script notes in the Nucleus UI very carefully first before submitting anything.
    A good [BUG REPORT] looks like this:
    Thread name: [BUG REPORT] Simon falling off horse
    BUG: Simon falls off his horse.
    EXPECTED: Simon should not fall off his horse, right?
    CAUSE: I'm pretty sure it's because I have my computer plugged into an auto-blow.
    STEPS TO REPRODUCE
    1.- Open up Simon Stays On His Horse: The Interactive Video Game of the Movie.
    2.- Choose Co-Op and join with another player.
    3.- Simon falls off his horse!!!
    TYPE: Severe! The gameplay can't continue if Simon isn't on his horse! (Alternatively, Minor if the gameplay can continue but it's just annoying)
    NUCLEUS OPTIONS: I played with 2 players using the vertical splitscreen (left and right) on one tv and 2 famicom controllers. I'm using the latest version
    SYSTEM: I'm on Windows 3.1 with 4MB of RAM, a 2KHz CPU and no graphics card, playing on a projector. She's a monster.
    I'd really like this to get fixed please thanks magic man! -Beanboy"
    Keep in mind most scripts are made and tested using the latest legit steam versions of a game, so provide information about what version of the game you have.
    Also provide a debug log of the NucleusCoop error or crash, enable the debug log in Nucleus UI settings and save, the debug log will be created in Nucleus root folder where the .exe is. You can also ask for support in our discord.
    Q: Why is Nucleus Co-Op resizing the game instances incorrectly/the instances look stretched?
    A: Try setting your monitor scale to 100% in your monitoTV resolution settings. It is also highly recommended that you add custom resolutions to all your monitors from your AMD/Nvidia/Intel panel (For example if you are using a monitor resolution of 1920x1080 add custom resolutions like 960x540, 1920x540, 960x1080, ect.) that way most games will be able to see and use those custom resolutions and the splitscreen will not look stretched(Example). Note that not all games support custom or ultra widescreen resolutions. Also try disabling the Nucleus status window in Nucleus UI settings and save.
    Q: Why is Nucleus Co-Op throwing an error message that it can not find a file when launching a script?
    A: A lot of scripts edit the game's .ini or .cfg files to force windowed and to adjust the game's resolution to the window size, so make you sure you run your game at least once and change some graphic settings before running it via Nucleus Co-Op, that way you make sure the proper config files are getting generated first. If you are still getting the error after doing that, select the game in the UI, click on Game Options and select Delete UserProfile Config Path for all players. Also try disabling the Nucleus status window in Nucleus UI settings and save.
    Q: Where are my Nucleus Co-Op save files located?
    A: Some scripts save to the Nucleus Co-Op enviroment folder located in C:\Users\YourUser\NucleusCoop, you can access each game save file via the Nucleus Co-Op UI too, select a game, click on Game Options and select Open UserProfile Save/Config Path. Other scripts just save in the same file path your regular game saves to.
    Q: Why are my in-game frames per second low/better in one instance than in the others when using Nucleus Co-Op?
    A: Remember that Nucleus Co-Op opens multiple instances of a game, so depending on the game this can be quite demanding for your PC, to improve FPS and performance try reducing graphics settings like textures and shadows, limit the FPS or unfocus all the game windows so that they get equal priority and the FPS even out, you can do this by Alt-Tabbing to a different window like the Nucleus app window, the game windows will still remain on top, you can also press the windows key+b in your keyboard to unfocus all instances.
    Q: My Playstation/generic PC controller isn't working/isn't being detected by Nucleus Co-Op, how do I fix it?
    A: Most Nucleus Co-Op Scripts only detect Xinput gamepads. Controllers that work best are Xbox 360 game controllers for minimum hassle. There are a few scripts that also support Direct Input gamepads but Xinput gamepads are generally a lot easier to restrict to a specific game instance than Dinput gamepads.
    If you are using PS4 gamepads try the app DS4windows, look in the settings for an option called "hide ds4 controller" - make sure it's ticked. To ensure it's definitely running in exclusive mode make sure ds4windows is set to load on windows startup, then turn your controllers on while windows is loading. Download the latest version here - https://ryochan7.github.io/ds4windows-site/
    Read more about how to use exclusive mode here: https://github.com/Ryochan7/DS4Windows/wiki/Exclusive-Mode-(Hide-DS4-Controller-config-option)-tips-and-issues
    If you are using generic dinput gamepads the app XOutput is also useful to emulate xinput gamepads.
    The app X360CE version 4 that creates virtual Xbox 360 Controllers inside your Windows operating system is also very useful to emulate xinput gamepads system wide.
    Remember that some games detect both dinput and xinput gamepads so even if you are emulating a xinput gamepad the input could still not be restricted correctly because the game is now responding to both the emulated xinput gamepad and to the native direct input of your gamepad, that is why some apps like DS4windows have an "exclusive mode".
    Also do not place any x360ce xinput dlls inside the Nucleus Co-Op files as this might interfere with Nucleus custom xinput dlls.
    Xbox One gamepads have some issues with background input in games that only support direct input gamepads and with Unity games that use Unity's default input for gamepad support.
    If you are using steam controllers try this: https://www.youtube.com/watch?v=wy4F2eqTXQ4
    Q: Why is my keyboard not showing in the Nucleus Co-Op UI?
    A: If a script is only showing gamepads and not keyboard icons that means the script only supports gamepads and doesn't support keyboards and mice in splitscreen yet.
    Q: There are many keyboards and mice icons in the UI, how do I know which ones to use?
    A: If you press a key in the keyboard you will use or move the mouse their corresponding icons in the Nucleus Co-Op UI will light up yellow. The app can detect keyboard macros that is why sometimes you will get multiple keyboard icons.
    Q: Can you play splitscreen+LAN in different PCs?
    A: Yes, if you run the game via Nucleus Co-Op in different PCs you can connect all instances you launch via LAN, for example you can have 2 players playing vertical splitscreen in one PC via Nucleus and connect to 2 others playing Nucleus splitscreen in a different PC via LAN. If the script uses steamworks multiplayer emulation you'll have to change the instances steam ids in the other PCs you'll connect to, otherwise the instances launched by Nucleus will use the same steam ids and won't be able to connect to each other. For that you can open the game script .js file in Nucleus scripts folder in the other PCs and add for example Game.PlayerSteamIDs = [ "76561198134585131","76561198131394153","76561198011792067","76561198043762785" ]; that will change the default ids of the first four instances you open in one PC via Nucleus Co-Op.
    Q: This project is Amazing where can I donate?
    A: We don't have an unified donation platform yet but you can support the devs individually here: Zerofox, Ilyaki, Lucas Assis.
    You can also donate to our main scripters that make the games scripts for Nucleus: Talos91/blackman9
    submitted by blackman9 to nucleuscoop [link] [comments]

    An Introduction to Git and GitHub

    What Is Git?
    Git is what is known as an open-source version control system which means that it records files over a period of time and these changes can be recalled at a later date. You can do a lot with Git whether it can be branching (creating something that is different from the master branch (the one you would most likely be working on)) or just committing to a repository (programming jargon simply calls it a repo).
    What Is Git Article - A more in-depth article concerning Git (Do not be alarmed at the fact it uses BitBucket)

    What Is GitHub?
    While there are multiple different cloud-based version control systems on the web, GitHub remains to be one of the most popular and it is free too! It can be found here: GitHub

    Basic Setup
    Depending on what OS (operating system) you have the setup might be slightly different.
    Linux (Will specifically be on a Debian system ie Ubuntu)
    Go to your terminal and type these commands (keep in mind these will be using the root preference)
    sudo apt update This will essentially update your system.
    sudo apt install git This will install Git on the system.
    git --version This is used to verify its downloaded.
    Mac
    Will also be in the terminal
    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/masteinstall)"
    brew doctor Will installs an application known as Homebrew which helps simplifies the installation of software on Mac systems.
    brew install git Will install Git on your system
    Windows
    Navigate to Git-SCM: Git SCM Download
    Git SCM will download protocol but also a BASH, a command line
    (Sidenote: I would personally recommend learning the command line as it is a lot more powerful and if you understand the command line you would also understand the GUI. One GUI based version control systems is GitKraken)

    Basic/ Most Used Bash Commands (Keep in mind there are several modifiers for each command)
    ls - lists the folders and files in the working directory (the current directory you are in)
    cd - changes directory
    pwd- used to find the path for the current directory
    mkdir- make a directory
    touch - update the access and or modification date of a file or directory without opening, saving or closing the file.
    cat - print files to stdout
    mv - moves files and folders
    cp - copies files or folders
    rm - remove files and folder (look into modifiers for this one)
    chmod - Change mode so you can set permissions for read, write and execute for the user, members of your group and others. (Binary can be used for this)
    man - can be used to look up any commands ie man cd

    Using GitBash/Terminal to Access GitHub
    1. Configure Git via git config --global user.name "[name]" and git config --global user.email "[email address]"
    2. Navigate to your working directory (Keep in mind you cannot just cd to the directory, you have to work your way to it, so I personally keep a folder called Programming in my home directory)
    3. Initialize a Git Repo via git init
    Now, this is where you can branch-of, you have two options, pushing a new repo or pushing a preexistent repo.
    Pushing a New Repo
    1. Commit your repo via git commit -m "first commit"
    2. Remote add your repo via git remote add origin
    3. Push to your repo via git push -u origin master
    For Pushing an Existing Repo
    1. Remote add your repo via git remote add origin
    2. Push to your repo via git push -u origin master
    Now that you have your repo set up, these are some helpful commands:
    git status Used to check what has changed ie additions and deletions
    git add Used to add files to commit if used with a period (.) it adds all of the files
    git commit -m "message" Use to commit changed, but it is on the local system, the -m can be changed to things such as -u which is an update but it is recommended to keep with an -m
    git push Used to push changes to GitHub
    git reset Can be used after commit to reset the commits (Good if you accidentally add a file you did not want)
    git pull Can be used to pull from any git repo, leave the URL out if your updating your current repo

    .gitignore
    The .gitignore file is useful for stopping certain files from committing automatically. It should automatically be in a repo when you create a project. To use it just cd to the directory where the file you want to exclude is and use pwd to find the directory pathing. Then copy the path into the file, it should look like a text file, and then add the name of the file you want to exclude.
    Example: UseJun/Programming/src/something.java

    Branching in Git (For advanced user)
    Branching is useful when many people are working on the same project or when you have multiple versions of the same project. The major advantage of branching is when you want to add a feature without compromising the integrity of the master branch.
    Branching Commands
    git branch [branch-name] Used to create a new branch
    git checkout [branch-name] Used to switch branches
    git merge [branch] Used to merge branch commits (usually people use this with a branch and the master)
    git branch -d [branch-name] Used to delete a branch

    For more information consult the Git Documentation here. Feel free to message me.
    submitted by chen_jun07 to learnprogramming [link] [comments]

    | Getting started with BSPWM for beginners! [Polybar][Powerline][Picom][Pywal]

    A while back I made a post on getting started with BSPWM (Binary Space Partition Window Manager) on this subreddit; I plan on deleting that and using this guide as the go-to for it. I was really all over the place, and at the time there wasn't really a lot of information on the tiling window manager so there were a lot of mistakes on it and things I could have done better. Now that I've grown more experienced throughout the years with Linux in general, I feel like I've perfected the art of ricing with BSPWM and Polybar together. And I'm here to show you how it's done.
    A couple of comments before we begin, I'm going to assume you have experience with the following:
    And I'm going to tell you that although you can replace your overall desktop environment with a tiling window manager, I'm really hoping that you have an open mind for keeping desktop environment in your system because tiling window managers tend to become more of a general struggle to deal with if you lack a solid background in Bash scripting. However, lucky for you in this tutorial I will not be using any bash scripting. The main idea here is a tiling window manager (aka Tiling WM) is not a desktop environment (aka DE), please research the difference between the two.
    [Part 1: Installing BSPWM and Polybar]
    Technically speaking you can install any tiling window manager on any distribution. However I'm going to split the line here between Debian (mostly Ubuntu) and Arch (I'm going to ignore Solus, Gentoo, and other Linux OS with unique file systems). If you're on Ubuntu you can install BSPWM without issues by simply running:
    sudo apt install bspwm
    However your efforts for viability in using the Polybar status bar ends there as you will have to install the extra dependencies to get Polybar to work, and even after installing the dependencies you have to reconfigure the cmake file to recognize where to find the siji font you have to install. Luckily for you if you know bash scripting really well and know how to for example pull out the clock configuration and print it into a UI, then you can use the default status bar bspwm installs called lemonbar which you can find out more of here: https://github.com/LemonBoy/bar
    But if you are like me and don't want to learn Bash scripting, and you want to hop right into Polybar without issues, then Arch Linux is the operating system for you. I'm going to assume you know how to install it, if you don't it's alright I don't either, which is why I use anarchy to install it; it's an iso that has a cli interface to help you install Arch into your system https://www.anarchylinux.org/
    In this tutorial I will be using Arch Linux as my OS and Gnome as my desktop environment of choice. It's one of the best desktop environments out there, and easy to apply themes to. Configure your desktop of choice how you like it, rice it up even if you wish to do so.
    In Arch Linux packages aren't located in one place like they are in Ubuntu, instead you have a core set of packages the Arch Linux organization caters, and the default manager for packages is called pacman ; then you have a collection of extra packages maintained by users who lovingly love Arch's simplicity called the Arch User Repository (AUR), and to get a package from the AUR you need to use a community package manager. I do not recommend using any AUR package manager (aka helper) mentioned on the web instead use ones from this list that comes from the official Arch Linux organization: https://wiki.archlinux.org/index.php/AUR_helpers
    I'm going to be using pikaur for this tutorial, to get it simply follow the instructions here: https://github.com/actionless/pikaur#installation and you'll be set.
    A note on using your community package helper and pacman: you want to have the mindset that if something can be gotten from pacman, that you'll get it from pacman because pacman uses sudo priveleges; meaning that the maintainers of the software are telling you that you can trust a certain package and it's because it will be installed within your root folders. Community packages can contain malware; and by some god given miracle some bastard has written malware, it will have a tough time escalating privileges because community packages are installed on your home directory. Believe me I've genuinely tried this and it's hard to do; it ain't easy to do for hackers.
    Now lets assume I'm starting from my gnome desktop, to install BSPWM on Arch, and while were at it lets install the other packages (note that one is a font) were going to focus on, simply run:
    sudo pacman -S bspwm sxhkd picom ttf-font-awesome rxvt-unicode dmenu powerline python-pip feh neofetch zsh-theme-powerlevel9k lxappearance zsh rofi scrot
    and while were at it lets install Polybar and the extra community packages (note that one is a font):
    pikaur -S polybar nerd-fonts-complete cava bash-pipes cmatrix
    Follow the prompts for each and install them. Note nerd fonts takes an incredibly long time to install, this is normal, you'll see pikaur stall at "compressing package" don't freak out!
    Were also going to use pywal from dylanarlaps (https://github.com/dylanaraps/pywal), please donate to him, he's done incredible work in creating this amazing tool were going to use:
    sudo pip3 install pywal
    All of these software have githubs to them, feel free to google search for them and skim their wikis!
    I also use zsh by default even though I'm not a mac user, but only real hacktivists use Oh My ZSH!
    https://ohmyz.sh/
    run the little curl command they got there, and you'll be part of the cool kids club!
    At this point you might be tempted to switch to BSPWM and get started, but you'll meet with the impasse of being unable to do anything, even log out of the session. To prevent this, you need to understand how BSPWM works. To start off, you first need to navigate to a hidden folder called .config in your home directory. In here you need to create two folders, one named bspwmand the other sxhkd, and within them you're going to create two empty files called bspwmrcin the bspwm folder and sxhkdrc in the sxhkd folder. The rc files (running configuration) are responsible for handling the behavior of the window manager (bspwmrc does this) and the keystrokes (sxhkdrc does this). I'm going to give you the default content Baskerville created in his github (https://github.com/baskerville/bspwm) for BSPWM below, later we are going to modify this for some extra functionality, so for now just copy and paste these into the files you created:
    bspwmrc: https://raw.githubusercontent.com/baskerville/bspwm/masteexamples/bspwmrc
    sxhkdrc:https://raw.githubusercontent.com/baskerville/bspwm/masteexamples/sxhkdrc
    And the last thing you want to do is make bspwmrc an executable, simply navigate to the file, right click it on your file manager, select properties>permissions, and tick the box to allow the file to be run as an executable. For sxhkdrc I won't be using urxvt, although I will give you the Xresources I created for it a long time ago, instead I'm going to use the gnome terminal to keep things easier. If you want to use the gnome terminal, simply replace urxvt with gnome-terminal in the sxhkdrc file.
    Once you're done with this, log out and change your environment to BSPWM, to open a terminal press super+enter where super is your windows or mac key on your keyboard to bring up a terminal. To change your workspace press Super+2, and to open firefox, press super+space to use dmenu to search for it.
    The way BSPWM works is through a socket-client model in which the handler (bspc) connects to a socket created by bspwm. You don't need to know too much about this in relation to this guide, but the config file I provide will get you started on how to setup commands for bspc. For now I want you to focus on that sxhkdrc is where you set your keybinds, sxhkd is the program that handles those keybinds, and bspc tells bspwm how to handle its backend. Consult the manual for BSPWM using man bspwm for more info.
    [Part 2: Ricing and Modding BSPWM]
    To start off I want you to select a background of your choice, and I want you to choose a background that doesn't just have two or three colors, but a mesh of beautiful colors, the more colors used the better. This background will model all of the colors used in your window borders and terminal through the use of a program called pywal: https://github.com/dylanaraps/pywal
    Now before going any further, I highly recommend that if you ever get stuck on any of this, that you go into the github pages of these packages and consult their READMEs and wikis, because I wont be there to hold your hand unless I feel like it. However to satisfy your inner demon I'll be sure to supply you with as much information as I possibly can and split this by sections to build the killer desktop you crave. As a reference you can always refer to my dotfiles here: https://bitbucket.org/Volteos/linux-dot-files/src/maste ; I'll probably have made some changes here and there, but nothing major since the inception of this guide.
    What I will NOT be dealing with is URxvt. Although the terminal seems to be the weapon of choice for BSPWM users I like my comfy Gnome Terminal, and to be fair, you can always pick the one you like; as far as this goes, any terminal will work with pywal because what it's actually dependent on is the zsh running config or .zshrc file hiding in your home directory. Oh and one last thing I had you install a program called dmenu, which you can use to bring up programs. Here are some basic keybinds to help you run stuff you need:
    So assuming you've managed to install Oh My Zsh, and installed pywal like I told you to, and you have chosen your wallpaper you simply need to navigate to your bashrc file and add my stuff to it. Don't panic, really try to read my comments follows with (#) :
    #set your wallpaper upon logging in &
    feh --bg-fill $HOME/Path/to/youpicture &
    #This invokes pywal with your image simply replace the path
    wal -i $HOME/Path/to/youpicture &
    #source the colors located within a shell script from your cache (you don't need to touch this).
    . "${HOME}/.cache/wal/colors.sh"
    #Set the border colors for your windows for focused, active and inactive ones.
    bspc config normal_border_color "$color1"
    bspc config active_border_color "$color2"
    bspc config focused_border_color "$color15"
    #Use the line below if you are on bspwm >= 0.9.4
    bspc config presel_feedback_color "$color1"
    #Use the line below if you are on bspwm < 0.9.4
    #bspc config presel_border_color "$color1"
    #place the focus on where the mouse is; if you like clicking windows to focus, comment this line
    bspc config focus_follows_pointer true
    After placing this in your bspwmrc file log out and log back in and you'll see the borders have adapted the color of the wallpaper behind it when you open your terminal. Neat right? But you might be asking, why doesn't the terminal take any colors? And the answer is in the shell it's using; remember that hidden file .zshrc in your home directory that you can't see if you don't have a show hidden files checkbox clicked on your file manager? open it, and at the very bottom of it, add this line:
    wal -i $HOME/Path/to/youpicture
    Now zsh is set to run pywal every time you open it. So now upon re-opening your terminal, you should see that the terminal has now taken the colors of your wallpaper. Feel free to adjust and modify these settings as you see fit. Change the colors, do as you please, as an added bonus to my setup I adjusted the gaps between my windows to be 25 pixels apart, like so:
    #Define window settings
    bspc config border_width 2
    bspc config window_gap 25
    bspc config split_ratio 0.52
    bspc config borderless_monocle true
    bspc config gapless_monocle true
    If and only if you have more than one monitor like I do, simply adjust your bspc monitor line to look like so:
    #Define Workspace Rules
    bspc monitor HDMI-1 -d Terminal Sublime Firefox
    bspc monitor DVI-D-1 -d ws4 ws5
    #These options for follow and focus put you on the workspace these programs start on; the -a = activate
    bspc rule -a Gnome-terminal desktop='^1' follow=on focus=on
    bspc rule -a Sublime_text desktop='^2' follow=on focus=on
    bspc rule -a firefox desktop='^3' follow=on focus=on
    bspc rule -a ws4 desktop='^4' follow=on
    bspc rule -a ws5 desktop='^5' follow=on
    And replace the desktops with the appropriate names, which you can find by simply running xrandrin your terminal. Again it doesn't have to be copy and paste what I have you can always replace the programs and workspace configuration with your own to your liking.
    [Part 3: Pimping Polybar]
    At this point you must feel all proud of your new little setup, but you can't be satisfied until you've got some method of looking at what the time is, or what workspace your on, or even better, a way to turn of your computer.
    That's where Polybar comes in, and now all you have to do is go to the github page for Polybar, and look through the wiki to find what you need. I've taken the liberty of copy and pasting every module I wanted; and put it all into one nice neat config file you can refer to. I don't feel like explaining how Polybar works as the wiki is more than acceptable.
    https://bitbucket.org/Volteos/linux-dot-files/raw/ee4519ce7b62f56af42c127024a4dadece3d0e51/bspwm-config/polybaconfig
    Here's my file in raw format, you can copy and paste it, but there are certain parts on it you need to modify to make it work on your pc. So the first parts are within the first set of parameters under "Bar Module"; upon skimming carefully you'll notice that I've set up two bars named future1 and future2, and within them I've placed the respective monitors I want them on.
    You'll also notice I've set some lines to set the fonts for them; now I use a font called font awesome to grab icons for the bar from:
    https://fontawesome.com/
    within these lines:
    ;Define fonts to be used, check fc-list to see all the ones you have
    font-0 = "Unifont:size=12:weight=bold;"
    font-1 = "Font Awesome 5 Free,Font Awesome 5 Free Solid: style=Solid: size=12;"
    font-2 = "Font Awesome 5 Free,Font Awesome 5 Free Regular: style=Regular: size=12"
    font-3 = "Font Awesome 5 Brands,Font Awesome 5 Brands Regular:style=Regular"
    I mention this and even put a comment on it to remind you of where and what to edit in the event that the creators of Font Awesome come out with a Font Awesome 6 and suddenly your icons on Polybar break. I once fell victim to this when Font Awesome 4 got released and it gave me a lot of frustration, so here I am saving you a massive headache should you choose to update your machine. So when Font Awesome 6 comes out change the 5 in Font Awesome 5 to a 6 and things should be okay again.
    The rest of my file is pretty much ripped off straight from the wiki, so please consult each section as needed.
    Alas to finally get Polybar to work you need to add it as a startup program in your bspwmrc file; in my case the lines would be:
    polybar future1 &
    polybar future2 &
    because I named my bars future1 and future2.
    My colors parameters section is ripped straight from from the pywal wiki here:https://github.com/dylanaraps/pywal/wiki/Customization . Just click on the Polybar Title and you'll see exactly what I put in there. The only thing is I added my own version of the background color because Pywal doesn't generate transparency in its code; only 6 Hex color codes, not the extra (AA) I added for transparency, I've also colored it dark purple.
    [Part 3: Going blind the right way with Picom]
    In the land before this guide was created, we used something called Compton to handle all of our compositor needs. If you don't know what a compositor does, it's a tool that lets you define shadows and transparency for your windows, and what I've done, which has viciously taken me 6 hours to achieve through trail and error, I am simply going to explain the config the best way I possibly can and give it to you. What I've managed to achieve is a subversive blur effect in addition to transparency, it's something you don't normally see in Unixporn configs, nor in desktop managers that use compton by default.
    Here it is: https://bitbucket.org/Volteos/linux-dot-files/raw/ee4519ce7b62f56af42c127024a4dadece3d0e51/bspwm-config/picom/picom.conf
    This was originally created by code_nomad and is a file ripped straight from the official Arch Linux website. Here's the original: https://git.archlinux.org/svntogit/community.git/tree/trunk/compton.conf?h=packages/compton#n80
    And to this day I still don't know what everything on it, but I've made educated guesses, and will try and explain it from my perspective. Note that at the time of writing this Picom has only its terminal manual to explain things man picom, so I'm doing you a favor here. To get Picom going you need to add it as a startup program to your bspwmrc file:
    #please replace accordingly
    picom --config $HOME/path/to/youcreated/picom.conf/file &
    The first and obvious mods I made are for the shadows, all I did is reset their offsets to 0 and set the opacity to 1 for them so you can clearly see them when you start picom. I did not touch the excluded shadows section.
    The only section I truly played around with is the Opacity section. The first group of settings speak for themselves as they're pretty self explanatory (I'm ignoring the override I have no idea what that does). The opacity rules is the meat of this config file. The way it works is each window has a property to it internally that has a class name to it. Each rule on the list is defined as PERCENTOPAQUE:RULE. It's best to take an example, so let me use this one to start off with:
    "99:class_g = 'firefox' && focused",
    So what this rule does is set the opacity of my window with window class 'firefox' to 99 if I am focused on it. If I am not focused it will revert to the inactive opacity setting of 0.5 that I have. The class names are very specific to the program you're working with, sometimes, simply supplying the class name wont work because the specified window doesn't have a WM_OPACITY property set on it; so you're left to use just the class name on it like I did with sublime so that it matches the class to anything resembling the name of the program (that's what I was told the ? is for):
    "99:class_g ?= 'sublime_text' && focused",
    In order to find the proper class names you have to use a program called xprop (I'll let you figure out how to use this), the class name will be within WM_CLASS(STRING) = "some name here". As a general rule of thumb, for any program you use first try and see if using just the "=" works, and if it doesn't then just use the "?=". In the examples above if I don't want the opacity to change on focus, then just remove the && focusedlike I did with Rofi.
    Blurring is a whole other concept I still don't fully understand however I played around with my settings and use a 7x7box kernel setting. If it lags for you, you can always try the 3x3box or the 5x5box kernel. You can also use the one in the original example with the crazy list of numbers, and just play around with it. I leave you to trial and error everything regarding blurring. I've chatted with some people on Unixporn about this, and I came across a neat little program called kawase, but according to Yshui, the maintainer of Picom, lack of manpower makes its integration hard, so if you're balsy enough to tackle this mountain, by all means help this person https://github.com/yshui/picom/issues/32 .
    [Part 4: URxvt Lovers (if you're not using URxvt skip this)]
    I don't mess around with this too much, here's my old .Xresources file, it includes some settings for Rofi, which I will cover later:
    https://pastebin.com/K6JvVfVV
    but it should work fine as long as you have Adobe source code pro fonts installed into your system. Here's the package index for the font in case if you don't have it: https://www.archlinux.org/packages/extra/any/adobe-source-code-pro-fonts/
    Simply place that file in your home directory and you should be okay.
    [Part 5: Fast Execution with Rofi]
    Rofi is a neat little tool used to replace dmenu I recommend trying it out on your terminal just to get the feel for it. All I'm doing is applying the pywal instructions to play here, so here you go:
    Original Instructions:
    https://github.com/dylanaraps/pywal/wiki/Customization#rofi
    Just follow steps 1, 2, and 3 on this:
    https://github.com/dylanaraps/pywal/wiki/User-Template-Files
    your end file for config.rasi should look like so:
    configuration {
    theme: "~/.cache/wal/colors-rofi-dark.rasi";
    }
    Be sure to replace your keybind dmenu for sxhkdrc for rofi, your keybind should look like so:
    #program launcher
    super + @space
    rofi -show run
    [Part 6: Setting the themes and default cursor]
    If you're on Unixporn you probably already know how to setup User themes from source by putting them in your home directory so I wont explain that. However I will tell you that you need to use lxappearance to set the icons and theme. It's pretty self explanatory once you actually open lxappearance and play around with it.
    The cursor however isn't permanent, at least in my case it wasn't, and luckily for you I found the solution. To set the default cursor:
    1 - copy cursor theme to /usshare/icons
    2 - change the default Inherits value to theme name as shown in lxappearance inside this file: /usshare/icons/default/index.theme
    and you should be set. [There is a bug that changes the cursor when focusing on windows that aren't related to lxde, as soon as I figure out how to fix that I'll add that onto here].
    [Part 7: POWUHLEVEL9000 (powerline ricing)]
    Ricing Powerline has been a massive headache for me. However everything is done within the .zshrc file. I'll just give you what I have and the beefy github wiki created for it (https://github.com/Powerlevel9k/powerlevel9k/wiki). It uses the entire nerdfonts collection https://www.nerdfonts.com/ which is why it took so long to install, so for all intents and purposes, if you can change my zshrc file to your liking then by all means do so (https://bitbucket.org/Volteos/linux-dot-files/raw/ee4519ce7b62f56af42c127024a4dadece3d0e51/bspwm-config/.zshrc):
    neofetch --ascii $HOME/path/to/some/file/with/ascii/art
    wal -i $HOME/Path/to/youpicture -q
    POWERLEVEL9K_MODE='nerdfont-complete'
    POWERLEVEL9k_OS_ICON=$'\uF303'
    POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon context status dir vcs) POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status)
    plugins=(git)
    source /usshare/zsh-theme-powerlevel9k/powerlevel9k.zsh-theme
    I've muted neofetch and pywal, I won't go into too much detail about neofetch only that I've muted it and used ascii art instead of an image. If you want to know more about neofetch this is your friend: https://github.com/dylanaraps/neofetch .
    [Part 7: GODLEVEL10000 (Powerlevel10k) ]
    I decided to add this as part of this guide, Powerlevel10k acts as a fork to Powerlevel9k that was introduced in March 2019, in which it absolutely speaks for itself. If you would love to try it out check out the github for it! https://github.com/romkatv/powerlevel10k/ I'll show you how to get started on it, I recommend starting off with migrating from Powerlevel9k. Assuming you have installed the nerd fonts and everything else, you should be good to go!
    Start off by installing it from your AUR helper:
    pikaur -S zsh-theme-powerlevel10k-git
    Then simply run:
    sudo git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
    sed 's/powerlevel9k/powerlevel10k/g' -i ~/.zshrc
    exec zsh
    p10k configure
    Follow the prompt and enjoy your now god level powerline config!
    [The End]
    This pretty much covers everything I hope to see some pretty gnarly configs down the line BSPWM is really on the rise and I think it's a much easier alternative to work with than i3, I love it so far, and hope its users come to love it as much as I do too someday!
    submitted by Volteos to unixporn [link] [comments]

    NEW 1 Minute binary options trading strategy  tutorial ... Binary Options Trading Explained - Tutorial #1 BINARY OPTIONS TUTORIAL/ Best strategy for 1 minute trades ... OneTouch Scripter Basic Scripting Tutorial Real money test of OneTouch Binary Options bot! BEST ONETOUCH BINARY BOT - DEMO Binary Options Trading - How I Turned $250 Into Almost ... Best Onetouch Binary Bot  live trading 99% Wining working Method - Best trading solution

    No touch options are the exact opposite of one-touch options. Basically, when you use this instrument, you’re betting your money on the assumption that the asset’s price will not reach a certain level before the time expires. No-touch options are similar to the traditional call/put options, in that you have only two possible outcomes and your profits and losses are fixed. One-Touch Binary Option – Live Trade Example. June 18, 2014 by Adam posted in • No Comments . Video Transcription. Hello guys. Welcome to the live sessions of the One Touch Course. Today we’re going to be trading one touch options using the strategy that we already taught you. So the first thing we want to do is go to the trading platform and see what one touch options are available. We ... Related posts:Binary Options Strategy - One Touch Intraday Trading Trend SystemOne Touch Trading - Binary Options Tutorial [Binary Options One Touch Strategy]One Touch Trading - Binary Options Tutorial [Binary Options One Touch Strategy]Watch One Touch... Compare 2020's best binary options brokers. Read the pros and cons of selecting a top online broker and start trading today. Trade Now! FREE $10,000 Demo Account . Skip to content. One Touch Binary Options. Trade – Learn – Earn. Menu. Home; About; Contact; Posts Best Binary Options Day Trading – Tutorials and Top 10 Binary Option Brokers 2020 in South Africa. Posted March 31, 2020; by ... One Touch Option: In these types of options you have to predict whether the price of the asset will touch or stay within a certain value. When selecting one touch options, you have to determine the position of the barrier and the time of expiration of the contract. In these types of options, only two outcomes are possible, i.e. the option ... These options are called binary options because there is a “one or the other choice” and a one or the other payout after the option expires. One or the other choices include up or down, or touch and no/touch. In computer code binary means 1 or 0, or one or the other. [scg_html_rbox_marketsworld] The way a binary option works is from the traders perspective (yours) is that you choose ... One Touch Binary Options. With One Touch options the trader has to predict if the price of a given asset will touch a given price level once (and only once). For example, if the value of an asset we have chosen is 45.6 and the one touch level is 46, the trader will have to predict if the price of the asset will reach that certain level (46) once (and only once). 9 An Overview of One-Touch Trading 12 Option Builder: The Basics 13 Open Platform: The Basics 14 Asset Types 14 My Acount 14 Using Your Trade Portfolio 15 Adding Funds to Your Account 16 Withdrawing Funds 17 Cedar Finance: An Overview. 3 Top Reasons to Trade Binary Options Top Reasons to Trade Binary Options Binary options, which are also known as two-way options, are among the easiest and ... One Touch Binary Options Strategy - Quick Profit Strategy. Is a type of trading opportunity known as a one touch trade and unlike a long term trade where you will only find out when you have made a profit one those trades expiries a one touch trade works in a completely different way. One touch binary options are one of these newer features. They offer high payouts and greater simplicity than stock trading. But are they really that straightforward – and are they suitable for beginners? If you need a refresher on the basics of binary options, check out our 101 guide.

    [index] [28282] [8630] [1645] [15226] [12206] [3079] [7417] [20173] [1555] [7036]

    NEW 1 Minute binary options trading strategy tutorial ...

    ONE TOUCH TRADING BOT BINARY OPTION USING RSI INDICATORS 2018 - Duration: 16:29. ... FULL TUTORIAL (Make Money Online) - Duration: 22:51. BIG MARK Recommended for you. 22:51. Make a Living in 1 ... Code for bonus: SMR2020 Click here: https://binaryoptionsmastery.com Binary Options Trading - How I Turned $250 Into Almost $20,000 In One Month With Binary ... Best Binary Options Strategy 2020 - 2 Minute Strategy LIVE TRAINING! ... 43:42. Tutorial profit, with WD Binary Bot Smart Martingale System real account - Duration: 21:18. Eri Wandi 13,483 views ... Subscribe to get strategies. Lessons and tutorials on forex trading and binary trading Join my telegram group https://t.me/themobiletrader Create a free acco... OneTouch Scripter Precision Editor Tutorial - Duration: 2:40. OneTouchScripter 920 views. 2:40 . الموسيقى التصويرية 4 - ون بيس - Duration: 1:01. seffah2011 Recommended for ... In this binary options tutorial I explain the basic fundamentals of binary options trading. If you are interested in trading the financial markets then I hig... The road to success through trading IQ option Best Bot Reviews Iq Option 2020 ,We make videos using this softwhere bot which aims to make it easier for you t... I hope this video was useful for you! Have a good trades 😉 _____ 👨🏽‍💻 Broker I've been using for the last few years : 👉 https://pocketoption-...

    https://arab-binary-option.checkpancter.tk