Programming

I’m glad to announce that the next big CraftBian version has begun its development! I do not have much information yet, as very much can change. Nothing is certain yet. However i do have a few plans for it listed below:

  • Will be based on a light Ubuntu distribution
    Instead of Minibian as is used now, i want to use Ubuntu at it is updated more frequently and still based on Debian. Also wider support across multiple platforms.
  • Multiple platform/board support.
    I hope to make a CraftBian installer, so that you can install the interface on whatever platform you might want to use. Everything from a Raspberry Pi, to a full fledged Server PC. However i still want to provide a full image like you are used to on the current CraftBian release.
  • Build on the Laravel PHP Framework.
    I’ve already begun the early testing phase on this, to test the compatibility of the current functionality in CraftBian
  • Nginx to replace Lighttpd
    Simply because it is better supported

Smaller, yet important changes:

  • Make less dependent on remote server
    One of the things that i don’t quite like about CraftBian v1.x is that if my remote server is down, CraftBian will be very slow or/and maybe even not work properly. This is something i do not want.
  • Better updating system, that can also account for the software behind CraftBian
    When updating CraftBian currently, the software behind it, in Linux, is not updated. This means that if some major change happened on this side, the user would be forced to completely reflash the image with a newer version. Something i do not want.
  • Multi language
    Something i had always intended but never got around to.
  • Logging system, maybe even remote submission of logs
    Another thing i had always wanted, but never got around to, as it would be easier for me to help and debug users having trouble.

This blog is intended for a detailed explanation on the progress of the development of CraftBian 2 and it will include some rather techy terms along with some programming. I also intend to use it for my self, as notes i need to remember along the way.

.. To be continued !

logo_small

Heard of my latest project CraftBian ? Its a web interface I’ve been working on and off on, for the last 3 months for administrating Minecraft Servers running on Raspberry Pi. And now its done! Well the interface it self and image is done and ready, but i just need to get some legal stuff in place before i can release it. Which is (hopefully) the least difficult part of it all. So stay tuned! For more details on what it can do go here.

Skærmbillede 2014-12-29 11.30.16

To make a task of mine easier, i made this small utility in C#. It just points out which files contains what you tell it to search for, and where in the file.

All you need to do is specify the root path of where to search, and what to search for. The tool will then run through each file and in all subfolders (recursively), and list all the occurrences it finds of the specified string or piece of text, and in which files it finds it, wand where in the file it finds it.

Link to page

I’ve been working on some templates for this site on pages that contains downloads which is now live. I have done this to streamline all my downlaods to “work in the same way”.

The new design is simply a box to the right in pages that hosts an application/mod/tool. In the box, you will find the points of interest when talking about software downloads, like download link, link to documentation, newest version number and so fourth.

So this is my first attempt at a mod. Basicly i only made this as a way to get into forge coding. That being said i also wanted to create something that could fix a thing that has bothered me for a long time : Villager Trades.. Those horrid offers they give you.. Useless stuff for insane prices. It has never made sense to me why a flint and steel, that you can make your self without any material in like 10 mins, should cost something that you can spend hours on trying to find.! And this is where this mod should come in handy.

EnchantmentTrades is a very small mod that only has one purpose: To let villagers trade enchanted books for your precious emeralds at a higher rate. The offers aint cheap though, but i also wanted some balance in the mod.

The pricing of the enchanted books is divided into 5 price tiers coresponding to the levels of enchantment the book offer.

Level 1 => Cost from 5 – 19 Emeralds
Level 2 => Cost from 8 – 32 Emeralds
Level 3 => Cost from 11 – 45 Emeralds
Level 4 => Cost from 14 – 58 Emeralds
Level 5 => Cost from 17 – 64 Emeralds
Level 1 High value enchantments => Cost from 45 – 64 Emeralds (Infinity, Silktouch.. Configurable)

The variable prices mean that you not only have to find a villager that will offer you the book you search for. You can also find villagers that sell your wanted book cheaper than the other. The hunt is on!

The mod is made for Minecraft 1.7.10, and can be downloaded here

I’ve just released a quick update that fixes some of the bugs that you guys have mentioned. Im about to create video tutorial on how to use the tool also. Mod Pack Creator should automaticly ask you if it should update it self if you launch it. If not just use the Check for updates menu button in the program.

CREATOR:
v0.7.3.1 Beta
* - Fixed a bug where autosaves would not save properly
* - Added a import function to the Installer lists tab
* - Fixed help messages on Custom Files tab not working at all.
* - Fixed a very small mistake, where resource pack browse button didnt work and path textbox opened the browse menu instead

INSTALLER:
v0.7.3.0 Beta
* - Fixed setting default resourcepack on minecraft 1.7+
* - Fixed install button, calling it self my test modpack (The return of lord grethe)
* - Fixed a small bug that would tell the user a minecraft profile was created even though it wasnt selected.

Mod Pack Creator version 0.7.0.0 has been released. It includes a bunch of new features, such as LiteLoader support and a new profile generator, for the vanilla/original Minecraft Launcher ( a much requested feature ).

Mod Pack Installer also got updated to be able to handle the new features of course, and then i updated the Updater tool (yeah i know, sounds a little retarded).

The reason for the update on updater was because back when i programmed that part, i hardcoded the urls into the application. A very bad choice i know, especially when you then go ahead and get a new domain. But that is now dynamic instead. Also since i still have the old domain some time yet, i the old updater is still working, and should still grab the new version automaticly. Most of all this update featured a lot of clean up on the code of Mod Pack Creator. Since its been quite some time since my last review on that part, i have learned a lot, which Mod Pack Creator should get part in too.

Next up is cleaning up the code in Mod Pack Installer. The code in there is quite a mess, but works ofcourse. Also next up is more customization i hope 🙂

Changelog:

CREATOR:
v0.7.0.0 Beta
* - Cleaned up a lot of code. 
* - Orignal Minecraft Launcher profile creation now possible
* - LiteLoader API can now be bundled with the mod pack
* - Added a Update URL setting.

INSTALLER:
v0.7.0.0 Beta
* - Now supports Original Launcher profile generation.
* - Now supports LiteLoader installation.
* - Changed the way the installer gets forge version.

OTHER:
* - Added a setting to the Updater that lets you change the Update URL.

Yesterday i began to get an overlook of all the code in Mod Pack Creator to continue the development. What i noticed is that a lot of the code in it, is not very well optimized, so my current task in it is to tidy this up.

After that, my plans is to get it working with other launchers than Magic Launcher (hopefully the vanilla launcher), and then get LiteLoader support (which should not be a problem).

Skærmbillede 2014-10-12 13.59.33

I while back i made a very simple app to Count the number of lines inside files. I had been away from C# for a while and thought it would be a good way to get back into the language. So i created this.

What it does is simply counting the number of lines in every file (recursively) in the directory you specify. It can be customized to exclude specific file types, which you can specify in the application it self.

I made it for my self because i was curious as to how many lines of code i had written in another project, but thought that others might find it usefull, so here it is!

Link to page