製作自己獨有的桌面小寵物
|
1. 下載 MyPet 程式及附送之參考例子 |
• |
請先下載 MyPet 程式及其附送之參考例子: |
|
|
• |
請用解壓軟件如 WinZip 將下載檔案解壓,解壓後會產生以下資料夾: |
|
Demo - 桌面小寵物製作示範 (FaFa Cat 製作講解) Makibao - 跳舞的綠色牧場王 Makibao 完全版 |
• |
注意:此程式可在 Windows 98/2000/XP/Vista 平台上執行,進入資料夾 Demo 或 Makibao 並直接執行 MyPet.exe 程式,無需任何安裝程序 |
• |
以下製作過程將以附送之示範例子 (資料夾 : Demo) 作講解說明 |
|
2. 設計寵物圖案 |
• |
首先設計角色造型,製作如以下示範例子之 BMP 點陣列格式檔案 |
|
 |
• |
在此例子中,檔案大小是 500 x 150 pixels;而每幅單一主角圖案均為 50 x 50 pixels,剛好是水平可放 10 幅圖案,垂直可放 3 幅圖案。因此在例子中,此 BMP 檔案可最多可容下 10 x 3 共 30 幅單一主角圖案。 |
• |
注意:整幅圖像長寬必須是單一主角圖案長寬大小之倍數 |
• |
檔案須為 BMP 點陣列格式圖像檔案,愈少顏色為佳。如例子中圖案僅為 16 色 BMP 檔案 |
• |
選定一獨有顏色為背景顏色,並填充該顏色至所有非主角圖案之空白地方。如例子所選之背景顏色為清藍色 Cyan (RGB: 0, 255, 255) |
• |
繒晝單一主角造型,並由左上角開始至右下角,逐行插入主角圖案於檔案中 |
|
3. 製作圖案遮罩 |
• |
然後製作圖案遮罩,如示範例子中之黑白色 BMP 點陣列格式檔案 |
|
 |
• |
在此例子中,遮罩檔案大小必須與原來角色圖案相同大少,同是 500 x 150 pixels |
• |
檔案須為 BMP 點陣列格式圖像檔案,沒有任何壓縮,純黑白兩色檔案。 |
• |
圖案內容基本上與原來角色圖案相同,只是角色造型部份 (顯示於螢幕之部份) 須填充為純白色,非主角圖案之空白地方須填充為純黑色。 |
|
4. 設計標題圖案、滑鼠圖案 |
|
5. 設定寵物基本資料 |
• |
所有寵物基本資料及動作編排均設定在 mypet.ini 文字檔案內,可用一般文書軟件如 Notepad 開啟並修改檔案內容 |
• |
請參考 readme.txt 以瞭解檔案設定格式及規則 |
• |
mypet.ini 檔案中 [Setup] 及 [Animation] 部份設定寵物基本資料;[Setup] 部份基本上由程式自行管理 (通過程式中 Option 介面);設計者祇須正確填上 [Animation] 之設定資料 |
• |
檔案中以 '#' 為開首之句子為備註,程式會忽略該行內容,不作處理 |
• |
如示範例子中,[Animation] 內之設定為 |
|
設定 |
解說 |
Application Name=FaFa |
寵物名稱為 'Fa Fa' |
Bitmap=fafa.bmp |
寵物圖案檔名為 'fafa.bmp' |
Bitmap Mask=fafamask.bmp |
圖案遮罩檔名為 'fafamask.bmp' |
Bitmap Title=title.bmp |
標題圖案檔名為 'title.bmp' (可省略) |
Cursor=fafa.cur |
「普通」狀況下之滑鼠指標圖案檔名為 'fafa.cur' (可省略) |
Hold Cursor=fafa1.cur |
「抓住」狀況下之滑鼠指標圖案檔名為 'fafa1.cur' (可省略) |
Transparent Color=0,255,255 |
圖案中空白地方的背景顏色為 (0,255,255) 清藍色 Cyan |
Num Of Image=28 |
寵物圖案檔中共有 28 幅獨立主角造型 |
Num Of Action=21 |
共設定 21 組不同動作 (稍後詳細說明) |
Image Height=50 |
每幅獨立主角造型高 50 pixels |
Image Width=50 |
每幅獨立主角造型寬 50 pixels |
Start Action=1 |
起始執行動作為第一組動作 |
|
|
6. 設定動作 |
• |
接著是構思動作,並修改 mypet.ini 檔案中 [Action] 部份 |
• |
如例子中第 1、5、12 組動作 |
|
動作組號 1 :   站立動作由第 1 幅主角造型構成並佔有兩格時間,所以設定如下: action1 = 1,1 |
|
動作組號 5 :       步行動作由第 5、6、7、8、9、10 幅主角造型連續構成,所以設定如下: action5 = 5,6,7,8,9,10 |
|
動作組號 12 :        180 度轉身動作由第 1、15、16、2、16(垂直鏡面)、15(垂直鏡面)、1(垂直鏡面) 幅主角造型構成,注意水平鏡面之圖案須要加上 'r' 於圖案編號之前,所以設定如下: action12 = 1,15,16,2,r16,r15,r1 |
• |
在 mypet.ini 檔案中 [Action] 部份中,為每組動作作出設定;如例子中共創作 21 組不同動作,所以設定如下: |
|
[Action] action1 = 1,1 action2 = 2,2 ... action21 = 28,27,28,27,28 |
|
7. 編排下一動作及其或然率 |
• |
接著需要為下一動作作出編排,你可以設定一系列動作及其發生之可能性 |
• |
在 mypet.ini 檔案中 [Action] 部份中,為每組動作作出編排,其設定如下: |
|
[Action] next1 = 1-6,4-30,5-20,6-20,7-6,9-6,12-6,13-6 next2 = 2-20,3-50,8-15,r8-15 ... next21 = 21-70,20-30 |
• |
如例子中第 2 組動作設定如下 : |
|
action2 = 2,2 next2 = 2-20,3-50,8-15,r8-15 |
• |
第 2 組動作 (正面站立) 之後可能發生之動作會是: |
|
設定 |
解說 |
2-20 |
保留在動作 2 (正面站立),發生可能性是 20% |
3-50 |
跳往動作 3 (正面坐下),發生可能性是 50% |
8-15 |
跳往動作 8 (轉往右邊),發生可能性是 15% |
r8-15 |
跳往動作 8 (轉往左邊,動作 8 之水平鏡面),發生可能性是 15% 注意水平鏡面動作須於動作編號前加上 'r' |
|
• |
所有可能性數值之總和必須為 100,如不正確,程式將會作出錯誤提示 |
|
8. 加入寵物移動動作 |
• |
要為寵物作出移動,就必須為動作設定水平或垂直移動數值 |
• |
在 mypet.ini 檔案中 [Action] 部份中,為有需要移動之動作加上 x_step<動作編號> 或 y_step<動作編號> 之設定句子 |
• |
x_step<動作編號> - 負數為向左移動,正數為向右移動 y_step<動作編號> - 負數為向上移動,正數為向下移動 |
• |
如示範例子中第 5 組動作 (步行動作) 設定如下 : |
|
action5 = 5,6,7,8,9,10 next5 = 5-70,1-20,6-10 x_step5 = -5 x_bound5 = 12-50,13-50 |
• |
在此例子中,寵物於螢幕中會每格向左移動 5 像素 (負數為向左移動) |
• |
如在移動過程中碰上螢幕邊界,進行中之動作需要立即終止並跳往下一新動作,可以加上 x_bound<動作編號> 或 y_bound<動作編號> 之設定句子。程式會根據該設定選擇下一組出現之動作 |
• |
x_bound<動作編號> 或 y_bound<動作編號> 設定句子格式與 next<動作編號> 是完全相同 |
• |
若果移動動作需要有充分空間完成,可以加上 x_buffer<動作編號> 或 y_buffer<動作編號> 之設定句子 |
• |
x_buffer<動作編號> - 負數為向左移動需要空間,正數為向右移動需要空間 y_buffer<動作編號> - 負數為向上移動需要空間,正數為向下移動需要空間 |
• |
程式會避免選擇沒有足夠空間之移動動作 |
|
9. 減低動作重覆機會 |
• |
若想逐漸降低相同動作出現之機會率,可以加上 same_ratio<動作編號> 之設定句子。 |
• |
如以下例子中,第 14 組動作繼續重覆出現的可能性為 50% (設定于句子 next14 = ... ),若想逐漸降低其以後再被選中之機會,可以加上句子 'same_ratio14 = 10' : |
|
action14 = 20,20,21,21,20,20,21,21,20,20,21,21,20,20 next14 = 14-50,3-50 same_ratio14 = 10 |
• |
此數值愈大,連續選中相同動作之可能性就愈降低 |
• |
此外,若希望令某一組動作避免選中,可以設定 dislike<動作編號> 之設定句子。 |
• |
如以下例子中,第 1 組動作為小貓站立動作,第 4 組動作為小貓蹲坐動作,為免出現小貓不停重覆站立及蹲坐之機會,需要根據某些條件降低某些動作出現之可能 |
|
action1 = 1,1 next1 = 1-6,4-30,5-20,6-20,7-6,9-6,12-6,13-6 same_ratio1 = 1 dislike1 = 4-10:4
action4 = 4,4 next4 = 4-20,1-50,20-30 same_ratio4 = 1 dislike4 = 1-20:1 |
• |
句子:dislike1 = 4-10:4 設定第 4 組動作須要避免選中,數值為 10 (此數值為兩動作出現應至少相隔多少其他不同動作為佳,數值愈大,被選中機會愈少),另外條件是先前亦曾出現過該第 4 組動作 |
|
10. 執行程式 |
• |
準備就緒後,就可以將所有檔案放置於相同資料夾下,再檢查檔案是否齊全,例如: |
|
檔案 |
解說 |
mypet.exe |
執行程式 |
mypet.ini |
程式設定檔案 |
fafa.bmp |
角色造型圖案 |
fafamask.bmp |
圖案遮罩 |
fafa.cur |
滑鼠指標圖案 -「普通」狀況 (可省略) |
fafa.cur1 |
滑鼠指標圖案 -「抓住」狀況 (可省略) |
title.bmp |
標題圖案 (可省略) |
|
• |
執行 mypet.exe 程式 |
• |
若設定檔案格式錯誤,會有錯誤提示要求糾正,如圖: |
|
 |
• |
糾正錯誤後再重新執行程式,直至再沒有錯誤提示出現 |
|
11. 疑難問題 |
|
|
歡迎將你的作品寄給本網站,本網站可以將你的作品再重新包裝為獨立程式,並放置於本網站供各界下載。 |