2) Night and day coding is not too hard, but it does involve a lot of long if statements. When I was writing my scenario, I used it to only have wandering monsters at night.
You should be able to modify this outdoor script without too much trouble:
Code:
//Outdoor section script// Section (1,0)beginoutdoorscript;variables;body;beginstate INIT_STATE;//if you come to the section in night, it places the encounters,//except if it already has if (((get_current_tick() < 625) || (get_current_tick() > 4375 && get_current_tick < 5625) || (get_current_tick() > 9375 && get_current_tick < 10625) || (get_current_tick() > 14375 && get_current_tick < 15625) || (get_current_tick() > 19375 && get_current_tick < 20625) || (get_current_tick() > 24375 && get_current_tick < 25625) || (get_current_tick() > 29375)) && (get_flag(210,1) < 1)) { place_out_spec_enc(0,25,30); place_out_spec_enc(1,20,25); place_out_spec_enc(2,18,33); set_flag(210,1,1); } break;beginstate START_STATE;//if it's night and you've killed them off, they come back if (((get_current_tick() < 625) || (get_current_tick() > 4375 && get_current_tick < 5625) || (get_current_tick() > 9375 && get_current_tick < 10625) || (get_current_tick() > 14375 && get_current_tick < 15625) || (get_current_tick() > 19375 && get_current_tick < 20625) || (get_current_tick() > 24375 && get_current_tick < 25625) || (get_current_tick() > 29375)) && (get_flag(210,1) < 1)) { set_flag(210,0,0); place_out_spec_enc(0,25,30); place_out_spec_enc(1,20,25); place_out_spec_enc(2,18,33); set_flag(210,1,1); }//if night ends in the section, the monsters all disappear if ((get_current_tick() > 624 && get_current_tick() < 635) || (get_current_tick() > 5624 && get_current_tick() < 5635) || (get_current_tick() > 10624 && get_current_tick() < 10635) || (get_current_tick() > 15624 && get_current_tick() < 15635) || (get_current_tick() > 20624 && get_current_tick() < 20635) || (get_current_tick() > 25624 && get_current_tick() < 25635)) eliminate_outdoor_enc(210,0); break;beginstate 10;//finds out if the encounters have been encountered or not//also facilitates re-appearance of monsters if (get_flag(210,2) < 2) inc_flag(210,2,1); else { set_flag(210,1,0); set_flag(210,2,0); } break;