shiningrocksoftware.comShining Rock Software

shiningrocksoftware.com Profile

shiningrocksoftware.com

Title:Shining Rock Software

Description:Shining Rock Software Devlog Game Buy FAQ Media Mods Forum Contact & Support February 13, 2017 1.0.7 Beta Here’s a new Banished beta for the modding community to test out. It adds 10 mod-usable reso

Keywords:

Discover shiningrocksoftware.com website stats, rating, details and status online. Read and write reviews or vote to improve it ranking. Check alliedvsaxis duplicates with related css, domain relations, most used words, social networks references. Find out where is server located. Use our online tools to find owner and admin contact info. Go to regular site

shiningrocksoftware.com Information

Website / Domain: shiningrocksoftware.com
Website IP Address: 104.28.20.98
Domain DNS Server: duke.ns.cloudflare.com,iris.ns.cloudflare.com

shiningrocksoftware.com Rank

Alexa Rank: 231940
existsite Rank: 5
Google Page Rank: 0/10 (Google Pagerank Has Been Closed)

shiningrocksoftware.com Traffic & Earnings

Purchase/Sale Value: $342,207
Daily Revenue: $937
Monthly Revenue: $28,126
Yearly Revenue: $342,207
Daily Unique Visitors: 86,255
Monthly Unique Visitors: 2,587,650
Yearly Unique Visitors: 31,483,075

shiningrocksoftware.com Keywords accounting

Keyword Count Percentage

shiningrocksoftware.com WebSite Httpheader

StatusCode 200
Transfer-Encoding chunked
Connection keep-alive
Vary Accept-Encoding,Cookie
Content-Type text/html; charset=UTF-8
Server cloudflare-nginx
Date Mon, 19 Feb 2018 19:31:20 GMT

shiningrocksoftware.com Traffic Sources Chart

shiningrocksoftware.com Alexa Rank History Chart

shiningrocksoftware.com aleax

shiningrocksoftware.com Html To Plain Text

Shining Rock Software Devlog Game Buy FAQ Media Mods Forum Contact & Support March 21, 2017 1.0.7 Beta Version 2 Here’s a new version of the 1.0.7 beta for the modding community. There weren’t too many bugs reported so far, so hopefully this will be the last test before an official version. If you use these, please let me know how they work out. If it’s working perfectly I’d like to hear about it too. Thoughts, bugs, crashes, etc. Email support (at) shiningrocksoftware (dot) com Changes -This build adds an example to the mod kit so that modders can add custom resources to the auto purchase section of the Trading Post. I overlooked this in the first beta. See the Readme.html for details. -This build fixes a potential crash when the user interface scale is not 100% and clicking on a dialog that is over a selectable building. Downloads Without further ado, here’s the beta mod kit: BanishedKit_1.0.7.170320.Beta.zip Here’s a patch for 1.0.6 to 1.0.7.170320 Beta BanishedPatch_1.0.6_To_1.0.7.170320.Beta.zip Note that you need to apply the patch to version 1.0.6. Previous versions of the game won’t work with this patch. Once downloaded, just unzip the archive into the folder where you have Banished installed. This is usually C:\Program Files\Shining Rock Software\Banished\. Please be sure to run the .exe’s that are in the archive – some distributions have the .exe named differently. As always the Beta is up on Steam. If you are using Steam, go into your game library and right click on Banished. Select properties, and then in the windows that opens, select the BETAs tab. Select the drop down and pick Beta Test for 1.0.7. Enjoy. 10 Comments February 20, 2017 On Creating Tools When I started coding my own engine and game, one of my constraints was that I wasn’t going to write an editor for whatever game I made. This was mostly a time saving constraint. Good tools take time, as I certainly learned while making console games. Often the editor tools to go with a new system took as much time to write and debug as the system itself. However, as I work on a new game, I find that I need an editor for some things. I need to be able to place objects, make paths, and edit properties. Which is potentially a huge project unto itself. So I’ve been looking for ways to write such a tool with minimal code. More immediately, I’ve been working on some procedural generation code for terrain, but I want to be able to edit the generation properties and see results immediately, instead of changing parameters, running the code to see a result, quitting the program, and repeating over and over. Also important, is the need to not waste time on user interface for code that is under-going development. If I add a parameter to the terrain generation code, then decide I don’t need it, I shouldn’t be spending time adding a new button or number edit field on some UI. This means some sort of automatic user interface. So what I need is an automatic property page style dialog that uses type reflection to determine field names, types, and values. Type Reflection The idea of reflection is that the code that’s running knows about the properties of itself as it’s running. Given some code that defines some data and the functions that operate on that data, the code can find out and use names, types, and all sorts of other useful information about itself. Strangely, the engine sort of has this functionality, but it wasn’t built for this purpose. It just needed some extra glue to make it work. Serialization What the engine does have is a very flexible serialization system. A single function is created to read and write data to and from disc. It can operate in binary mode or text mode. Text mode is a bit fancy. I wrote it to be able to edit data (since I had no editor) in a human readable way. It looks somewhat like JSON, but I built it to look more like the C++ class that is used in code. For example, here’s an ImageBuffer (that’s called a texture in most engines…) ImageBuffer editorSheet { String _imageName = "Build/EditorSheet.png"; Type _type = Rectangle; Usage _usage = Texture; Format _format = RGBA8; Flags _flags = Mipmaps; AddressMode _addressU = Clamp; AddressMode _addressV = Clamp; AddressMode _addressW = Clamp; FilterMode _filterMode = Linear; } The C++ that defines the ImageBuffer looks very similar. class ImageBuffer { protected: int32 _width; int32 _height; ImageType _type; Usage _usage; Format _format; Flags _flags; AddressMode _addressU; AddressMode _addressV; AddressMode _addressW; FilterMode _filterMode; System::String _imageName; }; And serializing the image to and from disc looks like this: bool ImageBuffer::Serialize(IO::Stream& stream) { IO::Serializer s(stream); s.Serialize(_InternalField(_width)); s.Serialize(_InternalField(_height)); s.Serialize(_Field(_type)); s.Serialize(_Field(_usage)); s.Serialize(_Field(_format)); s.Serialize(_Field(_flags)); s.Serialize(_Field(_addressU)); s.Serialize(_Field(_addressV)); s.Serialize(_Field(_addressW)); s.Serialize(_Field(_filterMode)); s.Serialize(_Field(_imageName)); PlatformSerialize(s); return true; } There’s some magic here. The stream of data could be text or binary, (or something else) and when the serializer is instantiated for that stream, an appropriate reader or writer is created. The _Field and _InternalField macros define what’s available to the text reader, and what isn’t. For example width and height come from the image, and aren’t user editable. Nothing says that the serializer has to come from or go to disc. It could be to memory, or some other crazy system, like following object pointers for garbage collection. So by writing a new back end for the serializer, I get exactly what I need for reflection. The field names, types, values, and addresses are available. I even know which fields I can present visibly and which ones not to. So with a tiny bit of extra code, I get object reflection without modifying any of my engine code. Amazing! Did I luck out or what? While the ImageBuffer example doesn’t show it, this system also works for user defined types, enums, flags, pointers, arrays, colors, type ids, etc. The User Interface Again, I’m lucky. In making Banished I wrote a UI system that has a lot of control types. So again I don’t have to write a ton of code or bring in a separate UI library. The UI in the engine has edit boxes, number edits and spinners, combo boxes, list boxes, check boxes, scroll bars, windows, layout tools, sprites, text, etc. Another game may not have needed so many different controls. I’m not sure what I’d be doing for making this user interface otherwise. Putting it Together So all I really needed to do was write some code that would create a control for each specific type. Number edits for integers, a set of check boxes for flags, combo boxes for enums, etc. When the user changes the values in the controls, I’d just need to push the new value into the back end of my serialize...

shiningrocksoftware.com Similar Website

Domain WebSite Title
shiningrock.com Shining Rock Golf Club | Blackstone Valley | Northbridge, MA
risingshining.com RISING*SHINING
shiningstarfrenchbulldogs.com Shining Star French Bulldogs
shiningforcecentral.com Shining Force Central
deturgroup.com Where the sun is shining!
shining-hope.org Home - Shining Hope
slmint.org Shining Light Ministries
shofco.org Shining Hope For Communities (SHOFCO)
shininglightmonroe.com Shining Light Baptist Church |
shiningstar.net Shining Star Services LLC
shiningstarsmagazine.com - Shining Stars Magazine
shiningsea-acupuncture.com Welcome To Shining Sea Clinic
shininglotus.com Shining Lotus Metaphysical Bookstore
shiningsungardenworks.com Shining Sun Garden Works
shiningstars.co.id Shining Stars > Home
shininghillsneos.com SHINING HILLS NEAPOLITAN MASTIFFS
basicnecessities.org Basic Necessities - Shining on Lives
shininglightdolls.com Shining Light Dolls Home