Friday, 3 March 2017

Weighing a LPG gas bottle

Okay , so we have 47kg bottles - now, lp gas cannot be measured using pressure
https://www.cnet.com/uk/how-to/ways-to-estimate-how-much-propane-you-have-left/

So I'm going to use 2 load cells in  bridge to get the mass of a bottle. Each cell is good for 50KB, but in a bridge, and add 2 pairs (4 cells) it really gives you 100Kg, since weight is distributed across the cells - you just have to average (add) them.
http://www.ebay.co.uk/itm/like/272478605518?lpid=122&chn=ps&adgroupid=40208487538&rlsatarget=pla-279605276345&adtype=pla&poi=&googleloc=1006598&device=c&campaignid=738085096&crdt=0

Vbus and 485

The other part besides a load of sensors to gather and log data for is the water heating system. It's Resol VBUS based. 

A Circuit diagram
RESOL Circuit Diagram v3


A full converter with usb is available here: http://www.resol.de/index/produktdetail/id/13/sprache/en/ price unknown. I sent off a query to get a price anyway.

One thing is that the solar controller unit is obviously not isolated from the power supply, something you will want to do for any equipment which is connected (at least by proximity) to water pipes, and to your roof in event of god ever getting unhappy with you and sending a bolt down. Nearby strikes also cause problems for piping anyway. So with a bit of searching, it appears that the bus supplies 35 ma (or 65 on newer devices) constant current. They appear to use this to drive a LCD remote display in one instance I believe, but not sure. anyways, it got me thinking that an opto isolator (which needs about 10mA) will work here if we power our converter from the line current. The LM339 uses almost no juice nor does our circuit. And the 5.5V signal sent on the master drops to around 4.5V due to our rectifier. which will still run our converter circuit, but may require a transistor on the Raspberry Pi side to clean up if needed, although I'm going to try without a transistor first.

Aha - just read the spec doc, the end of the doc contains a diagram supporting my assertion that you can use an opto coupled circuit to get galvanic isolation powered off of the line. Using a 5.1v zener; just add an extra rectifier diode to pump the supply which is fed through a 330 ohm resistor to prevent the power supply killing the data line, and smoothed off into a 470uF cap. (100nf ripple ceramic needed as usual.)

Saturday, 31 December 2016

Multiplayer dedicated server setup notes

To start off, use this guide http://empyrion.gamepedia.com/Dedicated_Server_Setup

Some notes also here https://steamcommunity.com/sharedfiles/filedetails/?id=621554476

I am moderating for a server, more details here, but this page is for learning how it all works.
bit.ly/CasualPVE
The shortlink to the challenge infos is http://bit.ly/MasperonChallenge

Steps

Copied dedicated.yml to server.yaml file and changed:

    Srv_Name: Masperon Challenge
    Srv_Password: xxxxxxx
    Srv_MaxPlayers: 4

    Srv_Description: "Post here [url=http://bit.ly/MasperonChallenge]Masperon Challenge[/url] to get a password."

    Srv_StopPeriod: 12

    Tel_Enabled: true   # Activate Telnet server
    Tel_Port: 30004
    Tel_Pwd: xxxxx




    MaxAllowedSizeClass: 5

    Seed: 470786         # The seed determines how the world is procedurally generated - the same seed means the same world

    DiffEscapePodContent: Hard        # Easy, Medium, Hard --- Determines the content of the Escape Pod when you crash land on the planet
    DiffAmountOfOre: Poor             # Rich, Normal, Poor --- Influences the average amount of ore that a deposit contains
    DiffNumberOfDeposits: Few        # Plenty, Normal, Few --- Influences the average number of deposits per planet
    DiffDroneBaseAttack: Hard         # Easy, Medium, Hard, Off --- Influences the difficulty of the drone base attacks (infinite waves, number of waves etc.)
    DiffDronePresence: High           # Low, Normal, High, Off --- Influences the overall number of drones that are present on a planet    DiffConstrCraftTime: Normal         # Faster, Normal, Slower --- Influences the overall craft speed of constructors


The part I'm struggling with next is telnet connection port 30004. For some reason I had to kill the EmpyrionDedicated process and start the server again before it starts to listen on port 30004

I made my server name "Masperon Challenge", but it's not in the server browser even though I can connect locally.

Saturday, 10 December 2016

Empyrion Galactic Survival blueprint swapper

I wrote a little script to swap blueprints from BA to CV. Sometimes you design a base as a CV, then at the end you spawn your artwork in space and too late realise that in order for a CV to land on it in space it has to be a BA, whoops. So I wrote a script to swap the BP types around.

This standalone script does not require anything else to download so long as you are running a Fully updated Windows 7 or Newer Windows. It runs native in Windows without any binaries. Before I share the script, here are the instructions:
1. Type "powershell" in the start menu
2. When it comes up, select run as Administrator.
3. Go to the folder you saved this file to and type as below:

4. Just run the script, it will find your blueprint folder (unless you installed steam on another drive to c:\ or 2 people play EGS on this computer, then it will error. If this happens, send me a message.)

Download the script here: http://pastebin.com/9bGH88jx
# If you see an error:
#     .\Toggle-Blueprint.ps1 : File Toggle-Blueprint.ps1 cannot be loaded. The
#     file Toggle-Blueprint.ps1 is not digitally signed. You cannot run this
#     script on the current system. For more information about running scripts and setting execution policy, see
#     about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170.
# Then open powershell using RunAs Administrator, and type in
# PS:\> set-executionpolicy Bypass
#
# Converts a CV to a BA blueprint or back (or HV to a SV)
# Optionally provide the name of a blueprint (without the file extension)
# Will not overwrite an existing BP
# Help: 
[cmdletbinding()]
Param($inputFile="", $outputFile="", [switch]$flatten)
Set-strictmode -version 2
$erroractionpreference = 'stop' 

$basePath = @(ls 'C:\Program Files (x86)\Steam\steamapps\common\Empyrion - Galactic Survival\Saves\Blueprints' -recurse -include 'Workshop.data')[0] | split-path -parent
if ([string]::Isnullorempty($inputFile)) {
 $list = ls $basePath -exclude 'workshop.data'
 [int]$i=0
 foreach ($file in $list) {
  $fname = join-path $file.fullname ($file.name + '.epb')
  write-host "$i $($file.name) [$((get-item $fname).length)]" -foregroundcolor cyan
  $i+=1
 }
 $inputfile = $list[ (Read-host "choice?") ].name
}
if ([string]::Isnullorempty($outputFile)) {
 $outputFile = $inputfile +'(1)'
}
Write-host "Loading: $inputfile"

$fname = join-path (join-path $basepath  $inputfile) ($inputfile + '.epb')
$bytes = [System.IO.File]::ReadAllBytes($fname)
# read some basic stats
$newClass = 0
$entityClass = switch ($bytes[8]) { # (0x02 = BA, 0x04 = SV, 0x08 = CV, 0x10 = HV)
 16 {$msg = 'HV to SV?'; 'HV'; $newClass=4}
 4  {$msg = 'SV to HV?'; 'SV'; $newClass=16}
 8  {$msg = 'CV to BA?'; 'CV'; $newClass=2}
 2  {$msg = 'BA to CV?'; 'BA'; $newClass=8}
 default {'unknown'}
}
$entityWidth = [bitconverter]::ToInt16( $Bytes,9)
$entityHeight = [bitconverter]::ToInt16( $Bytes,13)
$entityDepth = [bitconverter]::ToInt16( $Bytes,17)
$terrainFlag = $bytes[33];
0..40 | %{write-verbose "$_ $($bytes[$_])"}
write-host "type [Width, Height, Depth] Flatten"
write-host "$entityclass   [   $entityWidth,     $entityHeight,    $entityDepth]      $terrainFlag"
if (($flatten) -and ($entityClass -eq 'BA')) {
 # todo make it a toggle
 $msg = "Flatten Terrain? ($terrainFlag)" 
 write-warning "The flatten terrain option does not always work, test it a few times before sharing the results"
} else {
 $msg = "Convert " + $msg
}
$ans = Read-Host $msg
if (('Y' -eq $ans.ToUpper()) -and (($newClass) -or ($flatten))) {
 if ('Y' -eq (Read-Host "Are you sure?").ToUpper()) {
  if (($flatten) -and ($entityClass -eq 'BA')) {
   # todo make it a toggle
   $bytes[4] = 1
   $bytes[33] = 1
  } else {
   $bytes[8] = $newClass
  }
  $newProjectName = $outputFile
  mkdir (join-path $basePath $newProjectName) | out-null
  $newProjectPath = join-path (join-path $basePath $newProjectName) ($newProjectName + '.epb')
  write-host "Saving $newProjectPath ..."
  [io.file]::WriteAllBytes($newProjectPath, $bytes)
 }
}
 

And a clip of the script being used ( seek to 13:06 )
References:
https://github.com/Getty/p5-empyrion/blob/master/lib/Empyrion/Blueprint.pm
https://github.com/Riebart/EmpyrionGSTools

Multiplayer game RP - Star Wars themed Roleplay in EGS

Tiny signwriter font http://www.1001fonts.com/chlorenuf-font.html#character-map Chlorenuf
 Larger SW font http://www.dafont.com/star-jedi.font


Tuesday, 27 September 2016

GameMaker GameFlake

Well here we are again, just doing a braindump and embarrassing anyone who happens to fins this tiny 5 kilobyte piece of the internet and read it. No, not the CIA, you! (The CIA read all blog posters, especially mine in case we happen to be sharing state secrets.)

I got Gamemaker Studio for a low low price and now we are messing around to see if I can beat my mate the Jorrus at creating a game. I am secretly hopeing that he is too busy playing Eve or Civilization 5 or just playing Space Engineers or probably more likely Elite Dangerous to be honest. But hope never paid the bills, so here goes. I'm going to save down my notes (me memory has become like a sieve.. no a small bucket) so that as I learn things, the rate at which I forget them is captured electronically instead.

The YoYo games site is pretty good and has a good reference and explains the language really well. And initially it all looks really really simple, until you start creating something. THey link to some youtube channel with a guy called Shean or is it Craig, I forget, but the clips are pretty good, other channel that is pretty goodderer still, than Shaun Spalding https://www.youtube.com/user/999Greyfox is the https://www.youtube.com/user/SlasherXGAMES channel.

But moving pics can get you down so some good wall of text can also be found here by a Ukrainian called Vladim and goes by the blog YellowAfterLife http://yal.cc/gamemaker-trace-function/
(catchy title)

Thursday, 21 July 2016

Blueberry Footwraps

Are you a completionist? If so don't bother installing Idle Quest by TopCog onto your Android. It's the kind of game which is a lot like Clicker Heroes. Designed to use up time, doing nothing specific at all. Why not? Well the accomplishments are really easy to get most of. In fact you are going to get all but a handful of the game achievements (and the google play XP points) just by tapping the screen repeatedly and randomly so long as you do it about once a day, 5 minutes, over about 3 months. Sounding difficult yet?

In the clip I show you a hack to get levels in the game much faster, but I am missing a few accomplishments still. One of them is to craft a pair of "Blueberry Footwraps" boots.
I've yet to calculate the total number of craft-able items and quests you can go on along with quest storyline, it's pretty big, but not humongous. But the chances of crafting the specific footwrap boots are pretty low it seems.
I have managed to reach 92'nd on the leaderboard, so I've a way to go still. The boots seem to be just out of reach, I mean the "All your Spatula Needs" accomplishment seemed hard, but the 2 items are craft-able with some amount of ease individually. The trick is to have both items crafted, and then just wait until you get a Spatula city quest as well, which may or may not take terribly long. I think I waited about 10 minutes. If you get the Blueberry Footwraps do share.

Saturday, 11 June 2016

Beyond Eyes : A contemplative game review

Beyond Eyes is not a game, and it is;
it's not a graphic novel, and it is;
it's not a walking simulator it is, a very slow walk. I hope that has saved you some time, but if you are looking for a game that will change you, please join me. By their very nature video games change your world, sometimes they train you in keyboard mashing or in bad physics , always involving explosives. Beyond Eyes is a "game" that belongs in a genre of the kind of games that change your outlook. I call these contemplative games. The story starts with Rae, a young girl, around 8 or 9 by my guess, and blind.


Created by Tiger and Squid, Beyond Eyes took over 2 years of solo work until being adopted by Team17 (of Worms fame.) Published on Xbox , PC and Playstation4 in August 2015 the game is intended to create empathy, and to experiment with the act of exploring one's environment.  It's the exploring of a blind person executed in beautifully rendered watercolours, clean pastels on a muted back cloth of white which lends itself to the empathy experience that any game making it into this genre must have. You play as Rae, but soon I felt I was not playing as the young girl, but rather playing the part of the one thing glaringly missing, the parent. A parent who should be protecting what was once a promising and outgoing child but now damaged and terribly alone in the world. The sense of being alone is very strong in the game and it is personified in the appearance of a stray ginger cat whom Rae names Nani. Some people have drawn lots of conclusions from Nani's name or behaviour or meaning, but to me she is just a gentle but aloof cat. Nani appears in Raes' life just at the point when she is suddenly alone, and attempts to draw your character out of their shell by doing what cats do. The cat doubles as a kind of symbol, but Nani introduces you to the idea that a blind persons world is built using sound and smells. Which is why Nani smells like and behaves like a stray ginger cat. Wandering off and luring you through the garden gate into the exploring part of this game. The exploring mechanics introduces and uses an element that creator Sherida Halatoe capitalizes upon to emphasise the sensation of blindness. Your world as a blind person (and Raes' broken social life) is very small, and as you explore you must rebuild these 2 and at the same time overcome obstacles. You will get lost as you explore and search for Nani, and even temporarily stuck because you have to feel your way about because Raes' vision is built using sound. Sound which misleads her sometimes, resulting in some surprises and fun and leading to frustrations too. The game is played at a slow walking pace, I mean blind people can run, but the way the world fades slowly back to white after she passes, and the slow exploring speed really make you feel blind and trapped. You cannot move fast enough to rebuild the fading surroundings, and at one point it rains which literally washes away the beautiful watercolour rendered world. I started to feel a sense of urgency at this point and got totally hooked.




But even before this all, the game fell down for me. Just a few minutes into the game that will keep you busy for about 2 hours (more if you explore fully) I decided to see if closing my eyes would work. The sound-scape is really good, with chapters or stages are introduced with some brilliant piano work to compliment the mood. But the sound has holes, little things like a fountain that does not sound like a fountain if you approach it from the wrong side. Different walking surfaces are accurately rendered in the sound-scape with grass crunching giving way to the hard sound of stone and a crunch of gravel. But then the woodpecker at the bottom of the yard sounds out the same toc toc toc with no natural variations. Subtle environmental sound hardness changes and depth or echoes is another thing I expected to hear too, but to be fair I've not experienced in all but high budget games anyway. But these are made up for by the huge variety of sounds, smells and locations you must explore and the fact that Rae does not find a gun or a sword. Which would have come in handy in some of the threatening situations she finds herself in. Which is why I liked this game. I hope I've not given anything away, and helped you to decide if it's your kind of game. Creator Sherida Halatoe has added a few other elements to the game and story, but I'll leave you to find them.

Final scoring 

(How I score: http://softcircuitry.blogspot.com/2015/12/new-genre-contemplative-computer-games.html)
Artwork  5/5
SoundTrack  4/5
Plot 4/5
Playability 5/5
Value 3/5