I was born in 1990. I am a student in Hungary, Europe. My real name is Daniel Berezvai. My unique nickname is 3ICE, pronounced "Thrice". I prefer to be called "ice" in both written and spoken form.
Warcraft III World Editor is a creative and powerful tool. Users can change every aspect of the game, creating custom content called maps. These are .w3m or .w3x files, packed as .mpq archives. (Like .zip). It takes a lot of skill to create maps that are fun. The biggest map database on the internet can be found at http://epicwar.com, in case you would like to download some. They are currently hosting over 216 000 downloadable maps.
Just Another Scripting System I am an expert at producing quality map code in JASS, which is a scripting language, not to be confused with the music genre, jazz. Examples of my work:
- Three dimensional movement system with skating, flying, jumping into the air, etc.
- A function I like to call "LaglessSpawn" for it creates a lot of in-game objects (units) without lag
- A system that enables users to alter the terrain tiles on the fly, directly in game (Featured in MD)
- Sliding System, which is currently the only RoC compatible solution for sliding objects
- I ported the unique concept of Click on units to damage them to RoC (Featured in CW)
Graphical User Interface of the Trigger Editor I am also a professional user in GUI, although I prefer JASS, because typing is faster than clicking and JASS offers a lot more features. But in order to reach out to a wider audience, most of my tutorials will be in GUI and not JASS. In cases where GUI proves unusable (For example when documenting one of the above mentioned JASS systems) I will place a JASS tag on the blog post in question.
Map making I am the sole author of various custom map projects, most of which are prefixed with "3ICE's". Let me list the best ones here, in alphabetical order: 3ICE's Click Wars, 3ICE's Fastest Map Possible, 3ICE's Firelord System, 3ICE's Hell TD, 3ICE's Maze Designer, 3ICE's Music TD, 3ICE's Sliding System for RoC, 3ICE's Spinning System. My maps are widely recognized by the player community and I receive a lot of praise from the fans. I take special steps toward ensuring that all of my maps — even the ones that use TFT-only features — can be played without owning a copy of the expansion, which makes them very valuable to those without TFT. And of course the old school players who have a copy of TFT but prefer to play RoC.
General Computing I have successfully passed an ECDL exam in 2008 and I obtained a very high score. (ECDL stands for European Computer Driving License, and it is the European equivalent for ICDL.) The License proves that its owner is able to handle Microsoft Word, Excel, PowerPoint, Access, Operating Systems, knows how to use the Internet, work with data and also knows the main concepts of IT.
I am proficient in:
- JASS and vJASS — My first programming languages. Warcraft 3's (a computer game, not to be confused with WoW) rich and extensible (via a preprocessor) scripting system. I have made many an app in this language.
- Java — When I realized I completed all Java-related courses my university offers, I started sneaking back into classes and tutoring people.
- C++ — Lately even STL and the Windows API has seen use from me. No Boost library yet though.
- PHP — I really liked PHP as a youngster. I probably wasn't even 16 when I began customizing a WordPress release that this blog now runs on, an early version of phpBB that runs my forum, and working on many side projects, some of which are hosted on a subdomain of 3ice.hu.
- HTML — The body of this blog post / about page was written in HTML with Notepad++. My PHP scripts output valid HTML. I use DOM inspectors several times a day to hack the source code of broken websites.
- CSS — Some of my above mentioned bookmarklets have embedded style sheets. I add my own CSS rules to HTML elements with DOM inspector.
- C# — I actually used managed C# before starting on Windows Phone development.
- Haskell — I'll be picking up the last advanced Haskell class next semester.
- Python — If I do a search for *.py files over 1 kb, 137 results come up. That's a lot of python scripts.
- C — Do you even malloc()?
- LUA — I edited and fixed a lot of addons for World of Warcraft, but only made two of my very own. I wrote LUA scripts for ComputerCraft, which adds Programmable Computers to Minecraft.
- AutoIt — From autoclickers to autotalkers, I've played with Autoit a fair deal. All my scripts have at least a minimalist GUI and in-app documentation. Which is strange because this was way before I learned about the importance of documentation.
- AutoHotkey — Can't mention one without the other (AutoIt). I made an .ahk script that, upon pressing WinKey+F11, moves the currently focused window up by 3 pixels. This allows me to move windows off-screen, something that we cannot normally achieve. (They jump back down, no matter how tricky you move the mouse.) This script is useful for hiding the unnecessary title bar, regaining dozens of pixels of extra screen real estate in always-on-top or windowed full-screen apps.
- XML — I've done everything, from editing simple config files in XML all the way to programmatically compressing XML databases by removing unnecessary <![CDATA[...]]> declarations from around plaintext.
- Visual Basic — To this very day, I use apps written in VB. The most important of these is StealthBot, a chat and channel moderation bot designed for Blizzard Entertainment's Battle.net network. I didn't make it, but I followed its development eagerly. When the project died, the bot got open sourced. I wish more authors did this… Release your old software so volunteers from the community can maintain it!
- VBScript — Scripting, mostly for the above mentioned StealthBot… I run 7 instances of it on my server. One has 30-something plugins, most of which I wrote myself. Coolest is an AI that responds somewhat intelligently to wildcard-filled templates. Simplest is a highligher, that beeps when someone mentions my name in chat.
- XAML — Microsoft uses this extensively. I use it for Windows Phone and Windows 8 Store apps
- SQL — Databases, tables, queries… they all come up at one point or another during PHP development. Not only do I program SQL, I use MySQL and Access to edit huge data tables for my website. And SQLite for
- JSON — Could say I am proficient at it, as there is not much to JSON, but it is really just a file format. I should make a library for parsing the JSON file format before I promote myself to proficient level, however.
- Shell — I did a half year course on Linux Shell Scripting and was best in class, but I'm far from any Linux / UNIX guru.
- PowerShell — The windows equivalent. I rewrote all of my Shell scripts to PowerShell as practice.
- Pascal — Back in high school, we spent a year learning how to program. I alone got the subject, so I made a nice sum of money during our finals, doing my classmates' extra homework they had to do if they wanted to pass despite failing midterms.
- Batch — Not just for running shortcuts in a sequence and the occasional label and goto command. I can do fancier things too, like menus and enumerations.
for /f "delims=" %a IN ('dir /b /s /a:h *') do echo "%a"
- Turing — 1 project, unfinished
- Clean — We learned it alongside of Haskell, I chose to take my finals in Haskell.
- Ruby — I had to make a total of one Ruby script, got full marks for it, then never needed to use Ruby ever again. I prefer Python.
Will I ever learn?
The English language I own a State Accredited Language Examination Certificate for English (C1). This license is for the highest possible level of English examination you can take in Hungary, and as you can see from this writing, my English is pretty good. (English is not my first language. My native language is Hungarian.)
Tutoring I teach people how things work and why they work that way. I do the teaching mostly in written form, because I enjoy writing tutorials and manuals most. I do not mind sharing knowledge as long as I am not used solely as a tool for getting information. The main purpose of this blog is documenting the World Editor and teaching everyone the ways of map making. (Of course not all posts will be about the editor as I tend to write about myself and all the interesting stuff I come across too.)
Languages I love communicating in English. (Both writing and speaking.) My pronunciation is unpracticed, but my grammar is better than native speakers' and my vocabulary is extensively decent. My main languages are English and Hungarian, I also know some French, and I can fake-speak 71 more languages: Afrikaans, Albanian, Arabic, Armenian, Azerbaijani, Basque, Belarusian, Bengali, Bosnian, Bulgarian, Catalan, Cebuano, Chinese, Croatian, Czech, Danish, Dutch, English, Esperanto, Estonian, Filipino, Finnish, French, Galician, Georgian, German, Greek, Gujarati, Haitian Creole, Hebrew, Hindi, Hmong, Icelandic, Indonesian, Irish, Italian, Japanese, Javanese, Kannada, Khmer, Korean, Lao, Latin, Latvian, Lithuanian, Macedonian, Malay, Maltese, Marathi, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swahili, Swedish, Tamil, Telugu, Thai, Turkish, Ukrainian, Urdu, Vietnamese, Welsh, and Ydish. (4|\|[) 1 5P34|< 1337 700!)
Edited by 3ICE: This article was here for almost 4 years without being properly proofread. Why hasn't anybody told me about the spelling mistakes!?