3月 20, 2008

【雜記】由TOI回顧我的過往

@
  剛好TOI(台灣資訊奧林匹亞)初選比完一段時間了。仔細想想,去年還覺得走到這一步,在我的高中生涯中是不可能實現的。


  回頭想想,我對電腦可以說一見鍾情。第一次接觸電腦,是在小三或是小四的時候吧,那時還是Windows 95相當風行的時代。由於老爸是資訊相關工作者的緣故,所以在他使用電腦時,只要發現我偷偷湊在後面仔細的瞧,就會為我解說他現在在做什麼。

  不過,當時吸引我的,可不是什麼特別的電腦遊戲。而是一款再平常不過,Windows內建的磁碟重組工具。或許相當怪異,但是當時的我,可是被那幾個移動的小方塊所深深吸引。彷彿電腦本身是一場魔術,而我老爸就是訓練有素的魔術師。之後,我前前後後玩過幾款電腦遊戲,但是多半沒留下太多印象。


  當時的網路還是撥接上網(還會發出有趣的撥接音效),只是當時要上網,還得是老爸在家時,幫忙輸入帳號密碼才行。過了一兩年,好不容易跟家裡的人要到連線的帳號密碼,我才開始能夠自由上網。

  也不曉得是怎麼個因緣際會,我偶然發現了HTML(HyperText Markup Language,超文字標記語言)。不過那時我也不算真正學會,頂多就只是看到別人寫的網頁特別的地方,使用複製貼上勉強拼湊出一個網頁來(後來才知道,我複製的那一堆原始碼不光是HTML,其中多半是JavaScript)。


  也差不多是那個時期,我接觸了當時相當流行的LF1(Little Fighter,小朋友齊打交),還記得那是當時最大的娛樂。常常是到同學家,一玩就是整個下午。過了不久,LF2推出之後曾經掀起了一股熱潮,那就是「改版」。也就是透過一套非官方的改版器,只要學會簡單的語法規則,就能夠修改遊戲中的人物、絕招、關卡、甚至地圖。

  當然,我也是追著這股熱潮的其中一人。一開始我只是嘗試性的做小小的更改,再參照別人發出的改版,搭配從各處蒐集或是自繪的圖片。那時,我常常天馬行空的想哪個人可以有哪些招式。只要一有時間,我就沒天沒夜的做,到最後竟然還真的弄出一系列來了!

  當時頗得意的是,我將自製改版發佈於某個LF2的論壇專版,還獲得不少好評(不過之後由於電腦中毒重灌,我的辛苦結晶就如此付之一炬,也就沒有再次製作的意願了)。由於有過這種經歷,當時的我甚至決定了志向:遊戲設計師。雖然不可否認的,當時的這個夢想已逐漸淡忘。不過,也或許就是當時,悄悄的埋下了我學習程式設計的種子。


  上了國中之後,朋友介紹給我他正在學的一套互動多媒體軟體:Flash。這套軟體立刻激起我的興趣,我先是跟他借了書、要了軟體,再自己買書來研究。我試著用Flash作出幾個簡單的小動畫,或是直接將它做成網頁(我做出來的效果很差)。雖然到最後都沒有玩得很透徹,但是回想起來那段時期還是非常有趣。


  不過直到高二,才是真正影響我走向程式設計的時刻吧。當時的我第一次獲知有資訊學科競賽這回事,憑著高一電算課學過的Visual Basic,勉強通過了校內初選。當時還不是很清楚程式設計是怎麼一回事(或許現在也沒比當時瞭解多少),只知道看到前幾年的考古題只有一片茫然,暗自猜想憑己當時所學,去比賽必定是相當不利吧。事實果真不出所料,之後晉級參加的北市競賽只抱了個悽慘的成績(術科總共六題,滿分150分。我只得了10分)。

  在一次比賽下來,我認為使用VB來解題實在有諸多不便之處。於是,我決定另尋起點,重新開始。在詢問過學長及老師的意見後,我決定把C當作我的起點。我買了書,花了一個月的課後時間讀完。又花了一週的晚上零碎時間,一題一題把北市資訊競賽的題目解出來。等到對程式設計有些心得了,我開始試著寫一些其他的程式,或是以C語言的基礎接觸其他諸如C++、Ruby、PHP等等語言。

  直到接下來的這一年(也就是今年),我先後得到了全校第一、電腦軟體設計競賽高中組佳作(以排行來看應是第10名)、北市資訊學科能力競賽三等獎(第16名),到有幸參加TOI的初選。儘管比賽多少留有些許遺憾(太緊張的出錯,意外忽略的小細節),不過至少我證明自己靠著努力做到了!


  似乎是在長久的追尋,我才在電腦世界中找到自己的熱情。於是,我決定要繼續投身在程式世界當中。

  這次的比賽,是我高中生涯中資訊競賽的終點。也或許,這只是我往後程式設計的起點。將來會怎麼樣?我不知道。總之,只要夢想還在前方,只要我對程式設計還有熱情,我就會繼續走下去。

  最後,好像有什麼忘了說?




   我落選了。

  後記.還以為自己對學習資訊的歷程記憶猶新,實際寫出才發現所記得的事早已不多了。內容比較零星,但這些是我珍藏已久的回憶。

5 回覆:

kgame 智涵 提到...

本人極力推廣C#語言
雖然online judge還沒有支援此語言
但是這是我認為最好玩的語言

kgame 智涵 提到...

我國中時
LF2 DAT編輯器我也玩過
不過不會畫圖 ,只會亂湊出一些亂七八糟的絕招
(最近火影疾風傳版LF2不錯完)
我接觸程式語言式在高1下
學校教我們用Flash的Script寫一個計算機

在那時我在玩楓之谷這個online game
無意間接觸到Cheat Engine這個遊戲修改器
用這個遊戲修改器可以修改暫存器的值
在遊戲中達到無敵,飛天,怪物控制
於是我就投入楓之谷外掛的研究
也成了我研究程式的動力

在楓之谷遊戲中我寫過最大的外掛
應該是這套"KKMacro"
http://bbs.yoyo-do.com/thread-393628-1-1.html
是一個腳本語言程式
主要是發送鍵盤畫鼠訊息給遊戲

今年11/14日是我最後一次參加高中資訊科能力競賽
希望可以拿到前10名XD

Unknown 提到...

其實我一開始就有聽說C#的強大,也有考慮過學C#。不過一來.net很肥,二來.net不跨平臺,這兩點讓我實在學不下去。

你有寫外掛啊!怎麼感覺很多人都有在寫?我好像都還沒寫過這麼「應用」層面的東西@@"

總之,祝你比賽順利啦XD

PS. 話說一陣子之前LF2有出2.0版了。有沒有玩過XD?

kgame 智涵 提到...

.NET有具備跨平台的能力
只是微軟沒有開發其他平台的標準庫
不過在Linux上有非官方的MONO可以用

.NET程是不會很大
只是RunTime的資料稍微大了點(2.0有20MB , 3.5有 240MB)
這個在Vista中已經預設安裝了,XP使用者要額外安裝

另外以void Main(){}這樣的C#空程式編譯出來只有3KB
不會很大

Unknown 提到...

你說到重點了,「微軟沒有開發其他平台的標準庫」。雖然我知道有MONO可以用,不過M$好像也不斷想找它麻煩。

而且我說的檔案肥大指的是.NET Framework,不是寫出來的程式大小。就像你說的,飆到兩百多MB我實在不能接受。

張貼留言