# # DXLog.net contest definition file # Updated 2026-02-26 # CONTESTNAME=New Hampshire QSO Party (NHQP) CONTESTGROUP=NA QSO PARTY CONTESTWEB=https://w1wqm.org/nh-qso-party/ CONTESTRULES=https://w1wqm.org/nh-qso-party/ CONTEST_INFORMATION=Note: Only the first 10 DXCC counts for multiplier but DXLog will display all unworked DXCC as multipliers. The score summary is however correct. BANDS=80;40;20;15;10;50;144 MODES=CW;SSB;FM;RTTY;PSK31;PSK63 CATEGORY_MODES=Mixed # Helper strings # Valid state exchanges for non-NH stations. US states minus NH. DX and 49 states # ^(DX|AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA|HI|ID|IL|IA|IN|KS|KY|LA|ME|MD|MA|MI|MN|MS|MO|MT|NE|NV|NJ|NM|NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|TX|UT|VT|VA|WA|WV|WI|WY)$ # Valid states, provinces, and DX # ^(DX|AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA|HI|ID|IL|IA|IN|KS|KY|LA|ME|MD|MA|MI|MN|MS|MO|MT|NE|NH|NV|NJ|NM|NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|TX|UT|VT|VA|WA|WV|WI|WY|AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT)$ # Canadian provinces # ^(AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT)$ # NH counties # ^(BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)$ # Valid exchanges # ^(DX|AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA|HI|ID|IL|IA|IN|KS|KY|LA|ME|MD|MA|MI|MN|MS|MO|MT|NE|NV|NJ|NM|NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|TX|UT|VT|VA|WA|WV|WI|WY|AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT|BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)$ # Important: Replaces NF and LB with NL when logging and does not accept DC (just like N1MM) CFG_MULT=ON CFG_MULT_MANDATORY=YES CFG_MULT_ERRORTEXT=New Hampsire stations enter county (e.g., ROC),\nUS stations enter state, Canadian stations enter province,\nall others enter DX. CFG_MULT_DX_ALLOWED=YES CFG_MULT_RGX_CHECK=^(DX|AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA|HI|ID|IL|IA|IN|KS|KY|LA|ME|MD|MA|MI|MN|MS|MO|MT|NE|NV|NJ|NM|NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|TX|UT|VT|VA|WA|WV|WI|WY|AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT|BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)$ CFG_STATE_MANDATORY=YES CFG_STATE_ERRORTEXT=Enter state, province, or DX CFG_STATE_RGX_CHECK=^(DX|AL|AK|AZ|AR|CA|CO|CT|DC|DE|FL|GA|HI|ID|IL|IA|IN|KS|KY|LA|ME|MD|MA|MI|MN|MS|MO|MT|NE|NH|NV|NJ|NM|NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|TX|UT|VT|VA|WA|WV|WI|WY|AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT)$ # Allow self spotting SELF_SPOT_ALLOWED=YES # Dupe rule and mode grouping DOUBLE_QSO=PER_BAND_MODE_RCVD DOUBLE_QSO_MODE_CHECK=PER_MODE_GROUP MODE_GROUP=CW;PH;PH;CW;CW;CW DISPLAY_MODE_GROUPING=CW:CW;PH:SSB+FM;DG:RTTY+PSK31+PSK63 # County multiplier for all OWN_MULT_VALID=YES MULT1_TYPE=FIELD MULT1_COUNT=PER_BAND MULT1_FIELD=RCVD MULT1_DISPLAY=MULT MULT1_EXCEPTION=!DEST->RCVD:^(BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)$;NONE # State and province multiplier for in-state stations MULT2_TYPE=CUSTOM MULT2_COUNT=ALL MULT2_FIELD=RCVD MULT2_DISPLAY=MULT MULT2_EXCEPTION=CONFIG->EXCHANGE:^[A-Z]{2}$;NONE MULT2_EXCEPTION=!DEST->DXCC:^(VE|K|KL|KH6)$;NONE # DXCC multiplier for in-state stations DXCC_DB_USE_ARRL_LIST=YES MULT3_TYPE=DXCC MULT3_COUNT=ALL MULT3_FIELD=FROM_DXCC MULT3_DISPLAY=MULT MULT3_EXCEPTION=CONFIG->EXCHANGE:^[A-Z]{2}$;NONE MULT3_EXCEPTION=DEST->DXCC:^(VE|K|KL|KH6|-)$;NONE # Live score multiplier attributes LIVESCORE_MULT=STATE;STATE;STATE # Scoring POINTS_TYPE=CALC # Bandmap only rule to avoid making US stations with unknown location invalid POINTS_FIELD_BAND_MODE=CONFIG->EXCHANGE:^[A-Z]{2}$;DEST->RCVD:^$;ALL;ALL;0;DEST->DXCC:^K$ # Non-US and out-of-state stations are invalid for out-of-state stations POINTS_FIELD_BAND_MODE=CONFIG->EXCHANGE:^[A-Z]{2}$;!DEST->DXCC:^K$;ALL;ALL;-1 POINTS_FIELD_BAND_MODE=CONFIG->EXCHANGE:^[A-Z]{2}$;!DEST->RCVD:^[A-Z]{3};ALL;ALL;-1 # Phone POINTS_FIELD_BAND_MODE=ALL;ALL;ALL;^(SSB|FM)$;1 # CW and digital modes POINTS_FIELD_BAND_MODE=ALL;ALL;ALL;ALL;2 # Summary SCORE=BY_BAND_MODE SCORE_DISPLAY=BAND;QSO(CW/DG){CW+RTTY+PSK31+PSK63};QSO(PH){SSB+FM};DUP;MULT1(CNTY);*RGX:!CONFIG->EXCHANGE:^[A-Z]{2}$>>MULT2(S/P);*RGX:!CONFIG->EXCHANGE:^[A-Z]{2}$>>MULT3(DXCC);POINTS SCORE_TOTAL_FX=$FIELDVALUE.Points*($FIELDVALUE.Mult1+$FIELDVALUE.Mult2+If($FIELDVALUE.Mult3>10,10,$FIELDVALUE.Mult3)) # Prefill # DX stations send DX RGX_GUESS_DB=RCVD;^(?!^K$).*$;NONE;VE13DX_rgx.txt CALLSIGN_EXTRACT=RCVD;/(BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)$;/ DXC_COMMENT_EXTRACT=RCVD;\b(BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)\b; DB_FILE=NHQP_db.txt DB_FILE_COL_RCVD=1 # Cabrillo export CABRILLO_CONTEST_NAME=NH-QSO-PARTY CABRILLO_MODES=CW;PH;FM;RY;PS;PS CABRILLO_BAND=ALL CABRILLO_LOCATION_FIELD=STATE CABRILLO_LINE=FREQ;MODE;DATE;TIME;MYCALL;SENT;EXCHANGE;CALL;RCVD1;RCVD2 # Include own and received state in ADIF export ADIF_KEYS=MY_STATE;$EXCHANGE;SOURCE->DXCC:^(K|KH6|KL|VE)$;CONFIG->EXCHANGE:^[A-Z]{2}$ ADIF_KEYS=MY_STATE;NH;SOURCE->DXCC:^K$;CONFIG->EXCHANGE:^[A-Z]{3}$ ADIF_KEYS=STATE;$VALUE.Rcvd4;DEST->DXCC:^(K|KH6|KL|VE)$;DEST->RCVD:^[A-Z]{2}$ ADIF_KEYS=STATE;NH;DEST->DXCC:^K$;DEST->RCVD:^[A-Z]{3}$ # Explicit assignment is required since automatic assignment suppresses "DX" ADIF_KEYS=STX_STRING;$EXCHANGE # Multi-op categories can QSY freely MULTIOP_BANDCHANGECOUNTER_ENABLED=NO MULTISINGLE_RULE10_ENABLED=NO # Multiplier progress windows WINDOWS_CML_ENABLED=YES WINDOWS_CML_NAME=New Hampshire counties WINDOWS_CML_DATA=MULT1 WINDOWS_CML_LIST_FX=GetList_CustomArray("BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL","|") WINDOWS_CML_LABELS_IN_ROW=7 WINDOWS_CML2_ENABLED=YES WINDOWS_CML2_NAME=States and provinces WINDOWS_CML2_DATA=MULT2 WINDOWS_CML2_LABELS_IN_ROW=8 WINDOWS_CML2_HIDDEN_DXCC=*-K WINDOWS_WKD_DXCC_ENABLED=YES WINDOWS_WKD_DXCC_HIDDEN_DXCC=*-K WINDOWS_WKD_DXCC_HIDE_DXCC=K;KH6;KL;VE # Log fields FIELD_MODE_VISIBLE=MIXED FIELD_MULT_MAX_LENGTH=4 FIELD_RCVD_NUMERIC=NO FIELD_RCVD_MANDATORY=YES FIELD_RCVD_COPY=YES FIELD_RCVD_TYPE=CUSTOM FIELD_RCVD_MAX_LENGTH=7 FIELD_RCVD_RGX_CHECK=DEST->RCVD:^(DX|AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA|HI|ID|IL|IA|IN|KS|KY|LA|ME|MD|MA|MI|MN|MS|MO|MT|NE|NV|NJ|NM|NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|TX|UT|VT|VA|WA|WV|WI|WY|AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT|BEL|CAR|CHE|COO|GRA|HIL|MER|ROC|STR|SUL)$ FIELD_RCVD_NAME=Rcv Exc FIELD_RCVD_FORMAT_FX=$FIELDVALUE.Replace("NF","NL").Replace("LB","NL") # Standard messages CW_Message_1 = CQ NHQP $MYCALL $MYCALL CW_Message_2 = $RST $EXCHANGE[DIGITAL] $EXCHANGE CW_Message_3 = $EXCHANGE CW_Message_4 = $MYCALL CW_Message_5 = $LOGGEDCALL CW_Message_6 = AGN?[DIGITAL] AGN? CW_Message_7 = [DIGITAL]QRZ[]? CW_Message_INS = $LOGGEDCALL $F2[DIGITAL] $MYCALL CW_Message_PLUS = [DIGITAL]$LOGGEDCALL[ELSE]$CORRECT[] TU $CR $MYCALL[DIGITAL] NHQP # Multiplier list [MULTIPLIERS START] AL=Alabama AK=Alaska AR=Arkansas AZ=Arizona CA=California CO=Colorado CT=Connecticut DE=Delaware FL=Florida GA=Georgia HI=Hawaii ID=Idaho IL=Illinois IN=Indiana IA=Iowa KS=Kansas KY=Kentucky LA=Louisiana ME=Maine MD=Maryland DC MA=Massachusetts MI=Michigan MN=Minnesota MO=Montana MS=Mississippi MT=Montana NE=Nebraska NV=Nevada NJ=New Jersey NM=New Mexico NY=New York NC=North Carolina ND=North Dakota OH=Ohio OK=Oklahoma OR=Oregon PA=Pennsylvania RI=Rhode Island SC=South Carolina SD=South Dakota TN=Tennessee TX=Texas UT=Utah VT=Vermont VA=Virginia WA=Washington WV=West Virginia WI=Wisconsin WY=Wyoming AB=Alberta BC=British Columbia MB=Manitoba NB=New Brunswick NL=Newfoundland and Labrador NS=Nova Scotia NT=Northwest Territories NU=Nunavut ON=Ontario PE=Prince Edward Island QC=Quebec SK=Saskatchewan YT=Yukon[MULTIPLIERS END]